Текущее время: Пт, июл 25 2025, 22:25

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 08:32 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 08:38 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Нажать ENTER :wink:

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 08:42 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
nicky555 написал:
Нажать ENTER :wink:

:lol: :wink: Приколист однако :D
А автоматичкски?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 08:43 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Dan написал(а):
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:

Если интересует, как заполнить поля, чтобы сразу было видно новые значения - смотри прошлый пример про поиск к закрытому полю.
DYNP_VALUES_UPDATE

Но PAI/PBO не отработает!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: PROCESS ON VALUE-REQUEST.
СообщениеДобавлено: Пт, май 20 2005, 09:21 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
Dan написал(а):
Здрастьте господа. Такой вопросик как после отработки события PROCESS ON VALUE-REQUEST. перерисовать экран? :roll:

Если интересует, как заполнить поля, чтобы сразу было видно новые значения - смотри прошлый пример про поиск к закрытому полю.
DYNP_VALUES_UPDATE

Но PAI/PBO не отработает!


Слушай возвращает субрц=0 но обновляет экранную таблицу все равно только после ентера :cry:
я ему и DYNPFIELDS-STEPL впихнул


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:30 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
На экране поле с именем T001-BUKRS

+ в логике
PROCESS ON VALUE-REQUEST.
field t001-bukrs module f4_bukrs.

Всё работает..
У тебя наверняка мелкая ошибка где-то. Засылай код.

Code:
tables: t001.

call screen 100.
*&---------------------------------------------------------------------*
*&      Module  f4_bukrs  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE f4_bukrs INPUT.
  data: lt_rettab type table of DDSHRETVAL with header line.

  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
    EXPORTING
      TABNAME                   = 'T001'
      FIELDNAME                 = 'BUKRS'
*     SEARCHHELP                = ' '
*     SHLPPARAM                 = ' '
*     DYNPPROG                  = ' '
*     DYNPNR                    = ' '
*     DYNPROFIELD               = ' '
*     STEPL                     = 0
*     VALUE                     = ' '
*     MULTIPLE_CHOICE           = ' '
*     DISPLAY                   = ' '
*     SUPPRESS_RECORDLIST       = ' '
*     CALLBACK_PROGRAM          = ' '
*     CALLBACK_FORM             = ' '
    TABLES
      RETURN_TAB                = lt_rettab[]
*   EXCEPTIONS
*     FIELD_NOT_FOUND           = 1
*     NO_HELP_FOR_FIELD         = 2
*     INCONSISTENT_HELP         = 3
*     NO_VALUES_FOUND           = 4
*     OTHERS                    = 5
            .

  check not lt_rettab[] is initial.
  read table lt_rettab with key fieldname = 'BUKRS'.

  t001-bukrs = lt_rettab-fieldval.

  data: DYNPFIELDS type table of DYNPREAD with header line.
  refresh DYNPFIELDS.
  DYNPFIELDS-FIELDNAME = 'T001-BUKRS'.
  DYNPFIELDS-FIELDVALUE = lt_rettab-fieldval.
  append DYNPFIELDS.

  CALL FUNCTION 'DYNP_VALUES_UPDATE'
    EXPORTING
      DYNAME                     = sy-repid
      DYNUMB                     = sy-dynnr
    TABLES
      DYNPFIELDS                 = DYNPFIELDS
*   EXCEPTIONS
*     INVALID_ABAPWORKAREA       = 1
*     INVALID_DYNPROFIELD        = 2
*     INVALID_DYNPRONAME         = 3
*     INVALID_DYNPRONUMMER       = 4
*     INVALID_REQUEST            = 5
*     NO_FIELDDESCRIPTION        = 6
*     UNDEFIND_ERROR             = 7
*     OTHERS                     = 8
            .
  IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDMODULE.                 " f4_bukrs  INPUT



ЗЫ Причём я думаю у тебя неверно вызывается DYNP_VALUES_UPDATE,
а после ENTER появляется из-за присвоения значения напрямую. Типа как здесь t001-bukrs = lt_rettab-fieldval.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:37 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Кстати, блин, я в примерах из экономии передавал sy-dynnr, sy-repid напрямую, а нужно через отдельные переменные!

типа
L_REPID = SY-REPID
и передавать в модуль уже L_REPID!

Это связано с тем, что в модуле это значение передастся как имя главной программы группы функций!!


Последний раз редактировалось T Пт, май 20 2005, 09:39, всего редактировалось 1 раз.

Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:38 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
PROCESS ON VALUE-REQUEST.
*{ INSERT R3EK905380 1
FIELD iscj_r_postings-alloc_nmbr MODULE check_selection.
*} INSERT
...........................................................................................
MODULE check_selection INPUT.
...
...
...
CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE'
* EXPORTING
* CUCOL = 0
* CUROW = 0
* DISPLAY = ' '
* FIELDNAME = ' '
* TABNAME = ' '
* NO_MARKING_OF_CHECKVALUE = ' '
* TITLE_IN_VALUES_LIST = ' '
* TITEL = ' '
* SHOW_ALL_VALUES_AT_FIRST_TIME = ' '
* NO_CONVERSION = ' '
IMPORTING
SELECT_VALUE = se_val
TABLES
FIELDS = FIELD_TAB
VALUETAB = I_VBAK
* EXCEPTIONS
* FIELD_NOT_IN_DDIC = 1
* MORE_THEN_ONE_SELECTFIELD = 2
* NO_SELECTFIELD = 3
* OTHERS = 4
.

refresh DYNPFIELDS.
DYNPFIELDS-FIELDNAME = 'ITCJ_R_POSTINGS-ALLOC_NMBR'.
DYNPFIELDS-FIELDVALUE = se_val.
DYNPFIELDS-STEPL = ld_sellinE.
append DYNPFIELDS.


CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
DYNAME = sy-repid
DYNUMB = sy-dynnr
TABLES
DYNPFIELDS = DYNPFIELDS
* EXCEPTIONS
* INVALID_ABAPWORKAREA = 1
* INVALID_DYNPROFIELD = 2
* INVALID_DYNPRONAME = 3
* INVALID_DYNPRONUMMER = 4
* INVALID_REQUEST = 5
* NO_FIELDDESCRIPTION = 6
* UNDEFIND_ERROR = 7
* OTHERS = 8
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CLEAR: FIELD_TAB, i_vbak, num_sel.
REFRESH: FIELD_TAB, i_vbak.

itcj_r_postings-alloc_nmbr = se_val.
modify itcj_r_postings index ld_selline.

ENDMODULE. " CLEAR_SELECTION INPUT


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
iscj_r_postings-alloc_nmbr - на экране
iTcj_r_postings-alloc_nmbr - передаёшь в модуль


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:46 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
iscj_r_postings-alloc_nmbr - на экране
iTcj_r_postings-alloc_nmbr - передаёшь в модуль

Будешь смеяться но у меня все именно так :(
И с учетом S_repid = sy-repid
:(


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:48 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
В DYNP_.. нужно передавать экранное имя.
И ещё проверь, в STEPL кладётся именно тот номер строки, который ты выбрал?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:51 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Как я понимаю T - это внутренняя таблица с header line, а S - это структура, соответствующая экрану..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:51 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
В DYNP_.. нужно передавать экранное имя.
И ещё проверь, в STEPL кладётся именно тот номер строки, который ты выбрал?


Все так! и со STEPL все ок имено по ней я и модифаю вн таблицу.
хрен знает что ей нужно?
может спясать :D


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:54 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Dan написал(а):
со STEPL все ок имено по ней я и модифаю вн таблицу.

В STEPL кладётся значение, соответствующее строке на экране. Оно может отличаться от индекса таблицы, если она отмотана вниз..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 09:54 
Специалист
Специалист

Зарегистрирован:
Пн, сен 20 2004, 10:55
Сообщения: 228
Откуда: Москва, Hamburg, Prague, Brussels
T написал:
Как я понимаю T - это внутренняя таблица с header line, а S - это структура, соответствующая экрану..

Так и есть


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

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


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

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


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

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