Текущее время: Вт, июл 22 2025, 21:05

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Вопрос по графическому экрану ABAP
СообщениеДобавлено: Пт, июл 11 2008, 15:46 
Начинающий
Начинающий

Зарегистрирован:
Пт, июл 11 2008, 13:12
Сообщения: 4
Господа, подскажите плиз. Есть графический экран. На нем несколько полей ввода. Есть обязательное для воода поле, которое может принимать строго одно значение из фиксированного набора, допустим (1, 2 или 3). Как сделать так, чтобы другое поле на этом экране становилось активным только в случае выбора какого-то определенного значения первого поля, например 2? Во всех остальных случаях было задизэйблено.
Заранее спасибо.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопрос по графическому экрану ABAP
СообщениеДобавлено: Пт, июл 11 2008, 15:56 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
boban написал(а):
Господа, подскажите плиз. Есть графический экран. На нем несколько полей ввода. Есть обязательное для воода поле, которое может принимать строго одно значение из фиксированного набора, допустим (1, 2 или 3). Как сделать так, чтобы другое поле на этом экране становилось активным только в случае выбора какого-то определенного значения первого поля, например 2? Во всех остальных случаях было задизэйблено.
Заранее спасибо.

в PBO-логике вручную проверять значение поля с фиксир. знач. на знчание 2. Если совпадает, делать

Code:
LOOP AT SCREEN.
IF SCREEN-NAME = 'FIELD2' OR SCREEN-NAME = 'FIELD3'..
SCREEN-INPUT = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.


еще лучше в PAI прописать код


Code:
FIELD field1 MODULE field1_rq ON REQUEST.


в модуле field1_rq проверку первого поля и ставить какой-нить флаг, чтобы потом в PBO проверять флаг и открывать поля для ввода.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:14 
Начинающий
Начинающий

Зарегистрирован:
Пт, июл 11 2008, 13:12
Сообщения: 4
Насколько я понимаю, PAI-логика работать начинает, когда я нажимаю на кнопку выполнить. А так чтоб до процесса выполнения нельзя? Выбрал 2 -> стало доступным для ввода. Выбрал что-то другое -> задизэйблилось. Аналогично как JavaScrpt без перезагрузки страницы работает


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:16 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Можно. Оформите первое поле в виде листбокса.
Цитата:
To make an input/output field into a listbox, you must set the value L or LISTBOX in the Dropdown attribute in the Screen Painter. The visLg attribute determines the output width of the list box and the field. You can assign a function code to a listbox field. In this case, the PAI event is triggered immediately when the user chooses a value from the list, and the function code is placed in the SY-UCOMM and OK_CODE fields. If you do not assign a function code, the PAI event must be triggered in the usual way, that is, when the user chooses a pushbutton or an element from the GUI status.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:30 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
boban написал(а):
Насколько я понимаю, PAI-логика работать начинает, когда я нажимаю на кнопку выполнить. А так чтоб до процесса выполнения нельзя? Выбрал 2 -> стало доступным для ввода. Выбрал что-то другое -> задизэйблилось. Аналогично как JavaScrpt без перезагрузки страницы работает


Не обязательно на выполнить. Энтер по ячейке ввода вызовет проваливание в PAI.

Можете вторым советом воспользоваться, оно тоже ПАИ вызовет, только не забудьте на ListBox назначить код функции.
У вас фикс. значения из домена берутся?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:35 
Начинающий
Начинающий

Зарегистрирован:
Пт, июл 11 2008, 13:12
Сообщения: 4
toAval: Спасибо, буду ппробовать.
toArt386: Да, из домена


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:37 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
boban написал(а):
toAval: Спасибо, буду ппробовать.
toArt386: Да, из домена

это так, вопрос из интереса :)
а вобще - никаких проблем, делайте листбокс, остальное - как я советовал.
про код функции не забудьте :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 11 2008, 16:46 
Специалист
Специалист

Зарегистрирован:
Чт, июн 21 2007, 09:14
Сообщения: 166
Откуда: Москва
Пол: Мужской
boban написал(а):
Насколько я понимаю, PAI-логика работать начинает, когда я нажимаю на кнопку выполнить. А так чтоб до процесса выполнения нельзя? Выбрал 2 -> стало доступным для ввода. Выбрал что-то другое -> задизэйблилось. Аналогично как JavaScrpt без перезагрузки страницы работает

Добавлю: экран низя изменить без захода в PBO-логику, так уж система устроена. Код функции нужен именно, чтобы свалиться в PAI, а затем в PBO. НО! листбокс удобен тем, что при назначении кода ф. вызовет PAI без лишних телодвижений. А по обычному полю надо будет еще Энтер нажать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, июл 14 2008, 11:55 
Начинающий
Начинающий

Зарегистрирован:
Пт, июл 11 2008, 13:12
Сообщения: 4
Всем спасибо! Получилось! :D


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

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


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

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


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

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