Текущее время: Чт, авг 14 2025, 06:52

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Google [Bot]


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

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