Текущее время: Вт, июн 24 2025, 08:33

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 06:54 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Пт, апр 29 2011, 07:14
Сообщения: 13
Пол: Женский
На экране существует поле ввода для ввода даты.

Изображение

Ниже пользователь вводит еще кое-какие данные, и мне нужно перед тем как он нажмет на "Сохранить", проверить - не забыл ли он ввести ту самую дату.

Если забыл и поле осталось пустым, то после нажатия кнопки "Сохранить" я выдаю ему сообщение:

Изображение

И сразу после вывода этого сообщения поле ввода становится серым, неактивным, и в него уже невозможно ничего ввести

Изображение

Как с этим справиться?



Code:
  IF g_dsost IS NOT INITIAL.
    PERFORM save_data.
  ELSE.
    MESSAGE e000 WITH 'Необходимо указать дату составления акта!'.   
  ENDIF.


Если использовать сообщение s000, то все нормально. Но мне хочется показать что это ошибка, а не нормальное завершение


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 07:22 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, ноя 01 2004, 12:17
Сообщения: 298
Пол: Мужской
А в каком событии Вы выводите сообщение?
или это PAI? Побольше кода приведите.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 07:59 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Пт, апр 29 2011, 07:14
Сообщения: 13
Пол: Женский
Да, это PAI

Code:
*&---------------------------------------------------------------------*
*&      Module  PAI_0100  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
module PAI_0100 input.
  DATA: p_cancel, p_save, p_canc.

  CASE sy-ucomm.

    WHEN 'BACK' OR '%EX' OR 'RW'.

      PERFORM save_dialog_on_exit
               CHANGING p_cancel p_save.

      CHECK p_cancel IS INITIAL.     

      IF NOT p_save IS INITIAL.
        PERFORM save. ' вот здесь
      ENDIF.

      LEAVE TO SCREEN 0.

    WHEN 'SAVE'.           
      PERFORM save. ' вот здесь

  ENDCASE.
endmodule.                 " PAI_0100  INPUT


Code:
FORM save .

  IF g_dsost IS NOT INITIAL.
    PERFORM save_data.
  ELSE.
    MESSAGE e000 WITH 'Необходимо указать дату составления акта!'.
  ENDIF.

ENDFORM.                    " SAVE


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 08:20 
Старший специалист
Старший специалист
Аватара пользователя

Зарегистрирован:
Пн, ноя 01 2004, 12:17
Сообщения: 298
Пол: Мужской
Сделайте поле даты обязательным
или проверку
Code:
FIELD g_dsost  MODULE m1.
...
MODULE m_1 INPUT.
  IF g_dsost IS INITIAL.
      MESSAGE e000 WITH 'Необходимо указать дату составления акта!'.
  ENDIF.
ENDMODULE.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 08:30 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Пн, мар 28 2005, 15:38
Сообщения: 1257
Почитайте курс BC410
Нужно делать модуль в PAI
FIELD имя_поля MODULE имя_модуля.
ну или еще CHAIN использовать.
В этом случае, если будет выдаваться сообщение об ошибке, поле ввода находящееся в FIELD или поля ввода из CHAIN будут доступны для редактирования.

_________________
Там, где я рос, единственным развлечением было запоминать число «π».(С) Н. Стивенсон


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message
СообщениеДобавлено: Вт, июл 05 2011, 13:25 
Ассистент
Ассистент

Зарегистрирован:
Сб, июн 25 2011, 11:32
Сообщения: 29
Откуда: Украина, Киев
Пол: Мужской
1) Если просто проверить заполнено ли поле само по себе: то просто для поля экрана выбора добавляем OBLIGATORY
2) Если В связке с заполнением других полей, то можно в блоке AT SELECTION-SCREEN все обработать.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Поле ввода становится серым после message  Тема решена
СообщениеДобавлено: Вт, июл 05 2011, 13:40 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, июл 15 2009, 05:55
Сообщения: 174
Откуда: Мегион - > СПб
Пол: Мужской
Еще можно написать


Message S000 Display Like 'E'.
leave list-processing, Stop или Return. "В зависимости от ситуации.

_________________
Ничто так не заразительно, как смех начальника...


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB