Текущее время: Ср, апр 24 2024, 08:29

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Search Help на Selection screen
СообщениеДобавлено: Ср, окт 20 2004, 14:34 
Гость
на селекционном экране есть поле, к которому мной прикручен СХ посредством ФМ " F4IF_FIELD_VALUE_REQUEST ".

Однако этот ФМ возвращает только значение поля, на которое повешен VALUE-REQUES, но не возвращает других параметров, указаных в экспорте СХ.

Вопрос: КАК получить не только значение поля, но и другие параметры СХ (например в переменные) ????


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, окт 20 2004, 15:48 
Гость
А RETURN_TAB используете?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 21 2004, 05:01 
Гость
Конечно, но RETURN_TAB возвращает блок данных, относящихся к полю импорта и не содержит информации о других параметрах возвращаемых СХ'пом


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 21 2004, 08:32 
Гость
Возможно дело в том, что ты указываешь другие параметры ФМ, например DYNPPROG, DYNPNR, DYNPROFIELD или SEARCHHELP. В моем случае в RETURN_TAB возвращаются все экспортируемые параметры, например после такого вызова
CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
EXPORTING
TABNAME = 'ANLA'
FIELDNAME = 'ANLN1'
TABLES
RETURN_TAB = lt_return
EXCEPTIONS
FIELD_NOT_FOUND = 1
NO_HELP_FOR_FIELD = 2
INCONSISTENT_HELP = 3
NO_VALUES_FOUND = 4
OTHERS = 5

lt_return содержит 3 строки с RECORDPOS = 1


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 21 2004, 09:46 
Гость
Я так понимаю, что в твоём случае висит СХ в таблице на поле ANLN1 и модуль возвращает все параметры, а в противном случае ФМ требует на вход имя СХ с экспортируемым параметром и возвращает только его.
Значит, т.к. в справочнике на поле не вешается СХ(или я не права?), то нужно создать структуру и в ней уже к полю привесить СХ, в а параметре TABNAME указывать имя структуры. Или этом модуль работает только с таблицами?


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 21 2004, 12:11 
Специалист
Специалист

Зарегистрирован:
Чт, авг 19 2004, 07:31
Сообщения: 234
Откуда: Нижнекамск
вот так криво я получаю параметры

CALL FUNCTION 'F4IF_GET_SHLP_DESCR'
EXPORTING
shlpname = 'ZTEXT_DOC_FI'
shlptype = 'SH'
IMPORTING
shlp = shlp.

shlp-intdescr-dialogtype = 'D'.

*это параметры SH

LOOP AT shlp-interface INTO wa_interface.
CASE wa_interface-shlpfield.
WHEN 'SHORT_DESKR'.
wa_interface-valfield = 'SHORT_DESKR'.
MODIFY shlp-interface FROM wa_interface.
WHEN 'WPCODE_IN'.
wa_interface-valfield = 'WPCODE_IN'.
MODIFY shlp-interface FROM wa_interface.
WHEN 'WPCODE_OUT'.
wa_interface-valfield = 'WPCODE_OUT'.
MODIFY shlp-interface FROM wa_interface.
WHEN 'REPID'.
wa_interface-value = progname.
MODIFY shlp-interface FROM wa_interface.
ENDCASE.
ENDLOOP.
CLEAR line_sh.
CALL FUNCTION 'F4IF_START_VALUE_REQUEST'
EXPORTING
shlp = shlp
IMPORTING
rc = rc
TABLES
return_values = line_sh.

IF rc EQ 0.
LOOP AT line_sh INTO wa.
CASE wa-fieldname.
WHEN 'SHORT_DESKR'.
type_doc = wa-fieldval.
ENDCASE.
ENDLOOP.
ENDIF.
CLEAR dynpro_values[].
dynpro_values-fieldname = 'TYPE_DOC'.
dynpro_values-fieldvalue = type_doc.
APPEND dynpro_values.
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = progname
dynumb = dynnum
TABLES
dynpfields = dynpro_values.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, окт 21 2004, 15:43 
Гость
Может быть не менее криво, но вот так можно получить все экспортируемые параметры в lt_return:
Code:
  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
    EXPORTING
      TABNAME                   = SPACE
      FIELDNAME                 = SPACE
      SEARCHHELP                = 'AANL'
      CALLBACK_PROGRAM          = sy-repid
      CALLBACK_FORM             = 'CB_F4_VALUE_REQUEST'
   TABLES
     RETURN_TAB                = lt_return .
...
FORM CB_F4_VALUE_REQUEST TABLES RECORD_TAB STRUCTURE SEAHLPRES
            CHANGING SHLP TYPE SHLP_DESCR
                     CALLCONTROL LIKE DDSHF4CTRL.
  data: wa_props like DDSHFPROP,
        wa_intf like DDSHIFACE.

  LOOP AT SHLP-FIELDPROP INTO wa_props WHERE shlpoutput = 'X'.
    READ TABLE SHLP-INTERFACE INTO wa_intf
      WITH KEY SHLPFIELD = wa_props-FIELDNAME.
    wa_intf-F4FIELD = 'X'.
    MODIFY SHLP-INTERFACE FROM wa_intf
       INDEX SY-TABIX
       transporting f4field.
  ENDLOOP.
ENDFORM.                    "CB_F4_VALUE_REQUEST

А в TABNAME можно и структуру скормить.


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

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


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

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


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

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