SAPфорум.RU https://www.sapboard.ru/forum/ |
|
Помощь с Selection-screen https://www.sapboard.ru/forum/viewtopic.php?f=13&t=96444 |
Страница 1 из 1 |
Автор: | exotik [ Пн, май 28 2018, 14:08 ] |
Заголовок сообщения: | Помощь с Selection-screen |
Добрый день! Необходимо при выборе параметра на селекционном экрана выводилось его полное имя. К примеру, выбирает параметр XXX - справа выводиться текст "параметр ХХХ". |
Автор: | Bimit [ Пн, май 28 2018, 14:15 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Да вроде самое простое "Перейти к->Текстовые элементы->Тексты критериев выбора" |
Автор: | Kuranov.Dmitry [ Пн, май 28 2018, 14:16 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Code: "Нарисуем экран выбора
"блок означает, что все параметры в одну строку надо выводить SELECTION-SCREEN BEGIN OF LINE. " название параметра будет лежать в тексте-001 SELECTION-SCREEN COMMENT 1(10) text-001 . "Затем будет сам параметр p_param PARAMETERS p_param(20). "Тут выведем название выбранного значения PARAMETERS t_text(30) . SELECTION-SCREEN END OF LINE. "При отрисовке экрана установим параметры вывода поля с названием выбранного параметра AT SELECTION-SCREEN OUTPUT. "Перебираем поля экрана LOOP AT SCREEN. "нашли параметр T_TEXT IF screen-name = 'T_TEXT'. "Убираем рамку у поля, чтобы выглядело как обычная метка screen-DISPLAY_3D = 0. " запрещаем ввод screen-input = 0. MODIFY SCREEN. ENDIF. ENDLOOP. AT SELECTION-SCREEN. "при обработке PAI селекционника заполняем T_TEXT CONCATENATE 'Вы ввели:' p_param INTO t_text. end-of-SELECTION. |
Автор: | exotik [ Пн, май 28 2018, 14:58 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Kuranov.Dmitry написал(а): Code: "Нарисуем экран выбора "блок означает, что все параметры в одну строку надо выводить SELECTION-SCREEN BEGIN OF LINE. " название параметра будет лежать в тексте-001 SELECTION-SCREEN COMMENT 1(10) text-001 . "Затем будет сам параметр p_param PARAMETERS p_param(20). "Тут выведем название выбранного значения PARAMETERS t_text(30) . SELECTION-SCREEN END OF LINE. "При отрисовке экрана установим параметры вывода поля с названием выбранного параметра AT SELECTION-SCREEN OUTPUT. "Перебираем поля экрана LOOP AT SCREEN. "нашли параметр T_TEXT IF screen-name = 'T_TEXT'. "Убираем рамку у поля, чтобы выглядело как обычная метка screen-DISPLAY_3D = 0. " запрещаем ввод screen-input = 0. MODIFY SCREEN. ENDIF. ENDLOOP. AT SELECTION-SCREEN. "при обработке PAI селекционника заполняем T_TEXT CONCATENATE 'Вы ввели:' p_param INTO t_text. end-of-SELECTION. Спасибо!!! А есть возможность добавления нижнего подчеркивания? |
Автор: | Kuranov.Dmitry [ Пн, май 28 2018, 15:12 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
exotik написал(а): Спасибо!!! А есть возможность добавления нижнего подчеркивания? в смысле сделать подчеркнутый шрифт? насколько я знаю нет. можно горизонтальную линию сделать, SELECTION-SCREEN ULINE, но не уверен, что это то что вам нужно. Можно синим сделать |
Автор: | exotik [ Пн, май 28 2018, 16:46 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Kuranov.Dmitry написал(а): exotik написал(а): Спасибо!!! А есть возможность добавления нижнего подчеркивания? в смысле сделать подчеркнутый шрифт? насколько я знаю нет. можно горизонтальную линию сделать, SELECTION-SCREEN ULINE, но не уверен, что это то что вам нужно. Можно синим сделать Имел ввиду SELECTION-SCREEN COMMENT ... FOR FIELD .... |
Автор: | Kuranov.Dmitry [ Пн, май 28 2018, 17:22 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Code: SELECTION-SCREEN BEGIN OF LINE. " название параметра будет лежать в тексте-001 SELECTION-SCREEN COMMENT 1(11) text-001 for FIELD P_PARAM . "Затем будет сам параметр p_param PARAMETERS p_param(20). SELECTION-SCREEN COMMENT 35(5) text-002 FOR FIELD t_text. "Тут выведем название выбранного значения PARAMETERS t_text(30) . SELECTION-SCREEN END OF LINE. так что-ли? |
Автор: | Serge69 [ Ср, май 30 2018, 05:26 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Code: PARAMETER p_bukrs LIKE t001-bukrs OBLIGATORY MEMORY ID buk.
SELECTION-SCREEN COMMENT 45(25) gf_name FOR FIELD p_bukrs VISIBLE LENGTH 25 MODIF ID md1. AT SELECTION-SCREEN OUTPUT. SELECT SINGLE butxt INTO gf_name FROM t001 WHERE bukrs = p_bukrs. IF sy-subrc <> 0. CLEAR gf_name. ENDIF. LOOP AT SCREEN. IF screen-group1 = 'MD1'. screen-intensified = '1'. MODIFY SCREEN. ENDIF. ENDLOOP. |
Автор: | Kuranov.Dmitry [ Ср, май 30 2018, 09:34 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Не знал, что в комментарий можно переменную запихать, так будет короче даже. спасибо |
Автор: | RikoNw [ Чт, сен 06 2018, 11:59 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
А не знаете случайно как подавить этот OBLIGATORY MEMORY ID buk ? Зашел в стандартную транзакцию, ввел в поле значение БЕ (buk), вышел, зашел в другую, даже z-ную транзакцию, а там это значение за меня система уже ввела, это благо конечно, но это мешает. Спасибо! |
Автор: | UKY [ Пт, сен 07 2018, 09:18 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
Нужно просто убрать "MEMORY ID buk" и тогда БЕ не будет автоматически проставляться. |
Автор: | Besa [ Пт, сен 07 2018, 09:23 ] |
Заголовок сообщения: | Re: Помощь с Selection-screen |
RikoNw написал: А не знаете случайно как подавить этот OBLIGATORY MEMORY ID buk ? Зашел в стандартную транзакцию, ввел в поле значение БЕ (buk), вышел, зашел в другую, даже z-ную транзакцию, а там это значение за меня система уже ввела, это благо конечно, но это мешает. Спасибо! Создать вариант запуска программы, при этом у поля БЕ указать опцию "Отключить GPA"(само поле на экране конечно должно быть пустое), далее можно например создать транзакцию с запуском варианта, в таком случае селективный экран будет запускаться всегда с пустым полем БЕ, даже если у него указано дополнение MEMORY ID buk и SET/GET parameter BUK будет не пустой в памяти. Ну и понятно если это допустимо, то просто В Z транзакции убрать у поля MEMORY ID или дописать DEFAULT и присвоить какое-то постоянное значение(возможно и не существующее) |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |