powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Поле с десятичной точкой
8 сообщений из 8, страница 1 из 1
Поле с десятичной точкой
    #36959056
Galina Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Помогите справиться со следующей ситуацией:
в некой форме одно из полей должно быть с десятичной точкой. При вводе значения в это поле через "," и переходе на другое поле - ошибку перехватываю и заставляю пользователя ввести через "." Но если сразу после ввода через "," нажать "выход" - то кроме моего сообщения о том, что разделителем должна быть точка возникает сообщение CLose form? и никак не могу от него избавиться. Подскажите, как добиться правильного ввода значения и можно ли как-то в момент ввода "," автоматически менять ее на "." Спасибо
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36959089
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему бы просто не поставить тип поля number?
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36962584
Galina Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поле то у меня Number, но надо контролировать пользователей - как вводят информацию. Введут через "," - наткнутся на английский вопрос при выходе.
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36962971
Алымов Анатолий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
перехватывать сообщения в on-error, on-message триггерах и выводить на русском
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36967575
Galina Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у меня на блоке стоит триггер On-error
... if errror_code=50016 then
set_alert_property(...'В качестве разделителя должна быть точка')
raise form_trigger_failure; ...

А на форме Key_exit, где спрашиваю сохранять ли изменения
если выбрали сохранять - commit; exit_form;
если не сохранять - exit_form (no_commit);

И получается, если ввели значение через "," и нажали выход , то сначала появляется вопрос о сохранении данных, потом 2-ое сообщение , что разделителем должна быть точка,
а потом 3-е сообщение "Close this form?" которое никак не могу убрать.

Что делать?
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36969012
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galina Sh,

в Key_exit напишите что-то вроде такого:


Код: 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.
DECLARE
  button_yes 		PLS_INTEGER := ALERT_BUTTON1;
	button_cancel	PLS_INTEGER := ALERT_BUTTON3;
	response			PLS_INTEGER;
BEGIN
  
  IF :SYSTEM.FORM_STATUS = 'CHANGED' THEN
  	
  	response := SHOW_ALERT('save_changes_request');
  	
  	IF  response = button_cancel THEN
  		
  		RAISE FORM_TRIGGER_FAILURE;
  		
  	ELSIF response = button_yes THEN
      
       COMMIT_FORM;
      
       IF FORM_FAILURE THEN
         MESSAGE(ERROR_TEXT || 'Проверьте введенные данные!');
         RAISE FORM_TRIGGER_FAILURE;
       END IF;       
    ELSE
    	-- Do not save
    	NULL;   	
    END IF;
    
  END IF;
  
  EXIT_FORM(NO_VALIDATE);
END;
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36969016
OmegaMale
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galina Sh,

То есть, нужно проверять успешность COMMIT_FORM.
...
Рейтинг: 0 / 0
Поле с десятичной точкой
    #36976525
Galina Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OmegaMale,

БОЛЬШОЕ СПАСИБО. Заработало!!!!!!!!!!!!!
Только я еще перед Commit добавила проверку данных

Enter;
if not form_success then
raise form_trigger_failure;
else
commit;
end if;

потому как не могла выйти без сохранения из формы с ошибочным вводом данных
Еще раз СПАСИБО!!!
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle Forms [игнор отключен] [закрыт для гостей] / Поле с десятичной точкой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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