Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Forms restriction by IP / 21 сообщений из 21, страница 1 из 1
16.05.2008, 08:12
    #35315879
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Как в формах сделать запрет на открытие формы по АйПи адресу.

Пример. Человек сел за комп А открыл форму. Пошел сел за компьютер Б открыл форму.

Надо чтобы когда он попытался за компьютером Б открыть форму ему бы в вежливой форме сказали (Извини но за компьютером А у тебя уже открыта эта форма)
...
Рейтинг: 0 / 0
16.05.2008, 08:18
    #35315886
Dimka9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
RADDIMНадо чтобы когда он попытался за компьютером Б открыть форму ему бы в вежливой форме сказали (Извини но за компьютером А у тебя уже открыта эта форма)
это не запрет. это форма при входе должна регистриться на сервере и проверять запущена ли другая ее копия уже где-то

а если закрыть на А, что должно произойти на Б?
...
Рейтинг: 0 / 0
16.05.2008, 08:30
    #35315901
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
   DBMS_LOCK.allocate_unique('FROMA-1',handle)
   n:=DBMS_LOCK.request(handle,timeout=>1);
   if n=1 then
      TheFormIsOpened;
      n:=DBMS_LOCK.release(handle);
   else
      OpenForm;
      DoSomeShit;
      n:=DBMS_LOCK.release(handle);
   end if;
...
Рейтинг: 0 / 0
16.05.2008, 08:35
    #35315906
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Dimka9 RADDIMНадо чтобы когда он попытался за компьютером Б открыть форму ему бы в вежливой форме сказали (Извини но за компьютером А у тебя уже открыта эта форма)
это не запрет. это форма при входе должна регистриться на сервере и проверять запущена ли другая ее копия уже где-то

а если закрыть на А, что должно произойти на Б?

1 момент если форма регистрируется на сервере по АйПи подскажите пожалуйста где это происходит. У нас она регистрируется по юзер нейм не по АйПи. То есть один юзер с разных АйПишников может заходит в форму.

2 момент Если юзер закроет форму на А то на Б он может зайти.
...
Рейтинг: 0 / 0
16.05.2008, 08:36
    #35315908
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Николай Кальмарский
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
   DBMS_LOCK.allocate_unique('FROMA-1',handle)
   n:=DBMS_LOCK.request(handle,timeout=>1);
   if n=1 then
      TheFormIsOpened;
      n:=DBMS_LOCK.release(handle);
   else
      OpenForm;
      DoSomeShit;
      n:=DBMS_LOCK.release(handle);
   end if;


Можно с обьяснениями?
...
Рейтинг: 0 / 0
16.05.2008, 08:44
    #35315920
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
RADDIMМожно с обьяснениями?

Я в формсах не разбираюсь... Но если очень хочется получить результат, можно через пользовательские блокировки сделать с ограничением времени ожидания ресурса.
...
Рейтинг: 0 / 0
16.05.2008, 08:48
    #35315929
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Николай Кальмарский RADDIMМожно с обьяснениями?

Я в формсах не разбираюсь... Но если очень хочется получить результат, можно через пользовательские блокировки сделать с ограничением времени ожидания ресурса.

А зачем по времени?
...
Рейтинг: 0 / 0
16.05.2008, 08:48
    #35315932
Dimka9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
я честно говоря так и не понял постановки: а если на Б та же форма, но другой пользователь? а может ты ввобще кол-во входов одного юзера на разных ПК ограничиваешь?

В общем почитай про dbms_application_info для начала
...
Рейтинг: 0 / 0
16.05.2008, 08:52
    #35315936
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
RADDIMА зачем по времени?

Чтобы в случае ошибки по таймауту выдать сообщение о том, что ресурс занят. То есть, когда забираем ресурс (форму), создаём блокировку с именем ресурса и работаем. В конце работы блокировку снимаем. Если блокировку создать не удалось из-за таймаута (n=1), это значит, что с ресурсом работают и нам не отдают. Сообщаем об этом. Но повторюсь, в формсах не разбираюсь.
...
Рейтинг: 0 / 0
16.05.2008, 08:55
    #35315940
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Dimka9я честно говоря так и не понял постановки: а если на Б та же форма, но другой пользователь? а может ты ввобще кол-во входов одного юзера на разных ПК ограничиваешь?

В общем почитай про dbms_application_info для начала

а может ты ввобще кол-во входов одного юзера на разных ПК ограничиваешь?

Да я ограничиваю количество входов одного юзера на разных компьютерах
...
Рейтинг: 0 / 0
16.05.2008, 08:55
    #35315941
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Тока блокировку надо имя_ресурса+юзер
А то больше никто не откроет эту форму :)
...
Рейтинг: 0 / 0
16.05.2008, 08:56
    #35315943
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Вячеслав ЛюбомудровТока блокировку надо имя_ресурса+юзер
А то больше никто не откроет эту форму :)

Имя ресурса это комп? Или форма?
Если форма тогда не сработает. А если комп как сделать то?
...
Рейтинг: 0 / 0
16.05.2008, 08:58
    #35315948
AndrK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Forms то какой
клиент-сервер, Web ?
...
Рейтинг: 0 / 0
16.05.2008, 08:59
    #35315950
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
RADDIMИмя ресурса это комп? Или форма?
Если форма тогда не сработает. А если комп как сделать то?

Это форма. Сработает всё! Люди с разных компов борются за одну форму. Пускай есть два юзера -- Петя/втб и Вася/втб. Они оба хотят открыть форму "Даша.xxx". Для этого они зоздают блокировку с именем "Даша.xxx". Кому-то даст создать блокировку, а кому-то не даст. Всё логично.
...
Рейтинг: 0 / 0
16.05.2008, 09:04
    #35315955
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
AndrKForms то какой
клиент-сервер, Web ?

Клиент - сервер.
...
Рейтинг: 0 / 0
16.05.2008, 09:04
    #35315956
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Хотя если эти формсы через одну сессию работают или через пул соединений, то мой метод работать не будет. В общем, всё, ухожу... Сами думайте.
...
Рейтинг: 0 / 0
16.05.2008, 09:14
    #35315970
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Николай Кальмарский RADDIMИмя ресурса это комп? Или форма?
Если форма тогда не сработает. А если комп как сделать то?

Это форма. Сработает всё! Люди с разных компов борются за одну форму. Пускай есть два юзера -- Петя/втб и Вася/втб. Они оба хотят открыть форму "Даша.xxx". Для этого они зоздают блокировку с именем "Даша.xxx". Кому-то даст создать блокировку, а кому-то не даст. Всё логично.



Вроде есть 1 минус

Пример исходя из вашего.

Есть юзер Петя/втб зашел под своим юзером открыл форму "Даша.xxx" на компе АААА. Пошел погулял пришел к другу к Васе/втб. Петя так же Зашел под своим юзером открыл форму "Даша.xxx" на компе ББББ (Васином). Как ловить то?
...
Рейтинг: 0 / 0
16.05.2008, 09:19
    #35315980
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
RADDIM

Вроде есть 1 минус

Пример исходя из вашего.

Есть юзер Петя/втб зашел под своим юзером открыл форму "Даша.xxx" на компе АААА. Пошел погулял пришел к другу к Васе/втб. Петя так же Зашел под своим юзером открыл форму "Даша.xxx" на компе ББББ (Васином). Как ловить то?

Ну в моём случае форма не должна открываться с васиного компа. Блокировка глобальная, действует на весь сервер. А когда Петя зайдёт с васиного компа он откроет новую сессию, если только в формсах не используется сервер приложений.
...
Рейтинг: 0 / 0
16.05.2008, 09:23
    #35315991
Вячеслав Любомудров
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Идея неплохая, но объясняешь ты ее неправильно (почитай про пользовательские блокировки повдумчивей)
...
Рейтинг: 0 / 0
16.05.2008, 09:24
    #35315993
Николай Кальмарский
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Вячеслав ЛюбомудровИдея неплохая, но объясняешь ты ее неправильно (почитай про пользовательские блокировки повдумчивей)

Ну ладно, почитаю.
...
Рейтинг: 0 / 0
16.05.2008, 09:31
    #35316006
RADDIM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Oracle Forms restriction by IP
Спасибо буду эксперементировать
...
Рейтинг: 0 / 0
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Oracle Forms restriction by IP / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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