powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Форма входа
10 сообщений из 85, страница 4 из 4
Форма входа
    #39598305
MrShin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кровь из глаз. Переключайтесь на русскую раскладку перед вставкой. Попробуйте еще раз
...
Рейтинг: 0 / 0
Форма входа
    #39598325
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MrShinКровь из глаз. Переключайтесь на русскую раскладку перед вставкой. Попробуйте еще раз
Раскладка ничего не даст. Это глюк или фича Access (с какой стороны глянуть). Если создаёшь мастером кнопку на открытие формы, а форма имеет русское название, то как раз такая картинка и получается. И пофик, что стоит локализованный Access. Не хочет он понимать русские имена.
...
Рейтинг: 0 / 0
Форма входа
    #39598608
mround
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
уже разобрался. Хотел исправить пост, но не смог))) проще удалить модератору. А по проблеме, как оказалось сам переименовал ярлык а не саму форму, поэтому код OpenForm и не находил нужную форму для открытия. Сейчас всё работает. Но вот мне интересно, как реализовать следующие задачи:
1. Создаю базу для учреждения дополнительного образования. необходимо, чтобы педагогу по его паролю открывались только данные его объединения (список детей 1 педагога) в общей таблице, где есть все дети. Возможно ли это, либо делать таблицы для каждого объединения в отдельности? Тогда слишком много форм будет... а этого не хочется.
2. можно ли вести лог изменений общих таблиц, чтобы узнать, кто какие изменения внёс?
...
Рейтинг: 0 / 0
Форма входа
    #39598639
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mround2. можно ли вести лог изменений общих таблиц, чтобы узнать, кто какие изменения внёс?

Можно, причем организовать это можно особо и не прибегая к VBA. Попросили как то сделать пример небольшой, как можно проще. В общем есть главная таблица и таблица куда логи записываются. Снимает в общем имя юзера и на надлежащее действие добавляет в таблицу.
Я там пример на событие "добавление" не допилил, но это пару секунд поправить. Посмотрите, действительно все элементарно. Можно вешать как на события формы, так и на триггеры самих таблиц, которые появились начиная вроде с 2010го аксесса.
...
Рейтинг: 0 / 0
Форма входа
    #39598751
mround
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей ЛаловМожно, причем организовать это можно особо и не прибегая к VBA. Попросили как то сделать пример небольшой, как можно проще. В общем есть главная таблица и таблица куда логи записываются. Снимает в общем имя юзера и на надлежащее действие добавляет в таблицу.
Я там пример на событие "добавление" не допилил, но это пару секунд поправить. Посмотрите, действительно все элементарно. Можно вешать как на события формы, так и на триггеры самих таблиц, которые появились начиная вроде с 2010го аксесса.

Спасибо большое. Попробую сделать на вашем примере. А по поводу моего первого вопроса что-нибудь можете сказать?
...
Рейтинг: 0 / 0
Форма входа
    #39599281
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot mround]Сергей ЛаловА по поводу моего первого вопроса что-нибудь можете сказать?

Есть у меня написанный рабочий пример, но он слишком объемный и внедрен в действующую БД.
Как в аксессовском исполнении при помощи формы ввода,аутентификации входящего пользователя (все построено вокруг функции
environ("USERPROFILE"). Если интересно, пишите в личку, я там вас попытаюсь отговорить от аутентификации в чистом аксессе)) и расскажу о полноценном использовании логина и пароля в связке MS ACCESS + MySQL server.
...
Рейтинг: 0 / 0
Форма входа
    #39599423
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у меня в нормальной сетевой программе используется Windows - идентификация пользователь. И никаких лишних движений. При запуске Access программы, происходит запрос, под каким логином пользователь вошел в Windows, и в зависимости от этого назначаются все привилегии.
...
Рейтинг: 0 / 0
Форма входа
    #39599431
Фотография Сергей Лалов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
JossА у меня в нормальной сетевой программе используется Windows - идентификация пользователь. И никаких лишних движений. При запуске Access программы, происходит запрос, под каким логином пользователь вошел в Windows, и в зависимости от этого назначаются все привилегии.
Интересно, то есть у вас родная аутентификация пользователя в системе. А как вы снимаете значение логина при входе?

Есть малоизвестная в общем то универсальная функция в VBA , которая основные параметры пользователя окружения передает, environ("USERNAME"), environ("USERPROFILE") и так далее по используемым аргументам функции.

При открытии проекта в аксесс идет проверка текущего пользователя, сопоставление с наличием его в специальной созданной таблице пользователи. Если нет, то проект закрывается, если есть, то снимается значение дополнительного поля в таблице, к примеру поле "тип доступа". Значение передается в глобальную переменную, и при открытии каких либо форм, выполнении процедур выполняется тот или иной сценарий,в зависимости от значения этой переменной.
...
Рейтинг: 0 / 0
Форма входа
    #39599484
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей ЛаловJossА у меня в нормальной сетевой программе используется Windows - идентификация пользователь. И никаких лишних движений. При запуске Access программы, происходит запрос, под каким логином пользователь вошел в Windows, и в зависимости от этого назначаются все привилегии.
Интересно, то есть у вас родная аутентификация пользователя в системе. А как вы снимаете значение логина при входе?

Есть малоизвестная в общем то универсальная функция в VBA , которая основные параметры пользователя окружения передает, environ("USERNAME"), environ("USERPROFILE") и так далее по используемым аргументам функции.

При открытии проекта в аксесс идет проверка текущего пользователя, сопоставление с наличием его в специальной созданной таблице пользователи. Если нет, то проект закрывается, если есть, то снимается значение дополнительного поля в таблице, к примеру поле "тип доступа". Значение передается в глобальную переменную, и при открытии каких либо форм, выполнении процедур выполняется тот или иной сценарий,в зависимости от значения этой переменной.
Вы полностью правы. Есть внутренняя таблица, в которой прописаны соответствия логина Windows конкретному пользователю и его привилегии. Точнее, ссылка на таблицу, где прописаны определённые привилегии группы, к которой принадлежит пользователь.
У меня все рабочие программы организованы по такому принципу. Пользователям не надо каждый раз забивать свой логин и пароль. Это их откровенно бесит. Зато ведётся протокол, кто, что сделал, да ещё с какого компьютера.
А для определения имени пользователя я использую вот это Название компьютера, имя пользователя без API
...
Рейтинг: 0 / 0
Форма входа
    #39599489
Фотография Joss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mround...
2. можно ли вести лог изменений общих таблиц, чтобы узнать, кто какие изменения внёс?
Как это организовано у меня.
В каждой таблице, с которой работают пользователи, есть служебные поля.
1. Признак удаления. У меня записи не удаляются, а помечаются как удалённые. Так легко отследить, кто удалил запись, и что в ней было. И восстановить ошибочно удалённую.
2. Добавление. Два поля. Код оператора и дата добавления
3. Удаление. Два поля. Код оператора и дата удаления. Запись не удаляется физически, а только помечается как удалённая.
2. Изменение. Тут сложнее. Всё зависит от того, что Вам надо протоколировать. Просто признак изменения или что именно изменилось. Если просто последнее изменение, то два поля. Код оператора и дата изменения. А если надо контролировать, что изменилось, то и тут есть два пути
а) создаётся таблица для изменённых записей и перед изменением запись скидывается в ту таблицу с временем и кодом того, кто её изменил.
б) изменённые записи хранятся в той же таблице, что и исходные, но исходные имеют признак "устаревшие"
И тот и тот способ имеет как свои достоинства, так и недостатки.
...
Рейтинг: 0 / 0
10 сообщений из 85, страница 4 из 4
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Форма входа
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]