Текущее время: Пт, мар 29 2024, 03:06

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Заполнение признака классификации в IE02.
СообщениеДобавлено: Ср, фев 22 2017, 15:52 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, май 23 2012, 14:38
Сообщения: 30
Пол: Мужской
Добрый день!
Стоит задача при монтаже ЕО автоматом заполнять значение признака на вкладке "Характеристика". Эта вкладка динамическая и вызывается как-то из группы функций CTMS.
Есть ли вариант получить доступ к полям этой вкладки?

И если нет, то как изменить признак классификации (AUSP-ATINN) в user-exit при сохранении? Потому что параметр такой не передается в user-exit (IEQM0003).


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Заполнение признака классификации в IE02.  Тема решена
СообщениеДобавлено: Пн, фев 27 2017, 05:34 
Специалист
Специалист

Зарегистрирован:
Вт, июн 10 2014, 09:41
Сообщения: 179
Нужно использовать BAPI_OBJCL_CHANGE.
Чтобы не затирались предыдущие данные необходимо считывать предыдущие признаки при помощи BAPI_OBJCL_GETDETAIL.
Code:
  DATA lv_objectkey           TYPE bapi1003_key-object.
  DATA lv_objecttable         TYPE bapi1003_key-objecttable.
  DATA lv_classnum            TYPE bapi1003_key-classnum.
  DATA lv_classtype           TYPE bapi1003_key-classtype.
  DATA lt_alloclist           TYPE STANDARD TABLE OF bapi1003_alloc_list.
  DATA lt_allocvalueschar     TYPE STANDARD TABLE OF bapi1003_alloc_values_char.
  DATA lt_allocvaluescurr     TYPE STANDARD TABLE OF bapi1003_alloc_values_curr.
  DATA lt_allocvaluesnum      TYPE STANDARD TABLE OF bapi1003_alloc_values_num.
  DATA lt_return              TYPE STANDARD TABLE OF bapiret2.

  lv_objectkey    = iv_equnr.
  lv_objecttable  = 'EQUI'.
  lv_classnum     = 'CERTIFIC_OF_VEHICL'.
  lv_classtype    = '002'.

  CALL FUNCTION 'BAPI_OBJCL_GETDETAIL'
    EXPORTING
      objectkey              = lv_objectkey
      objecttable            = lv_objecttable
      classnum               = lv_classnum
      classtype              = lv_classtype
    TABLES
      allocvaluesnum         = lt_allocvaluesnum
      allocvalueschar        = lt_allocvalueschar
      allocvaluescurr        = lt_allocvaluescurr
      return                 = lt_return
  .
  LOOP AT lt_return INTO DATA(ls_return)
                    WHERE type CA 'AEX'.
    MESSAGE ID ls_return-id TYPE ls_return-type NUMBER ls_return-number RAISING error
            WITH ls_return-message_v1 ls_return-message_v2 ls_return-message_v3 ls_return-message_v4.
  ENDLOOP.

  READ TABLE lt_allocvalueschar ASSIGNING FIELD-SYMBOL(<ls_allocvalueschar>)
                                WITH KEY charact = 'INTERNAL_ORDER'.
  IF sy-subrc <> 0.
    INSERT INITIAL LINE INTO TABLE lt_allocvalueschar ASSIGNING <ls_allocvalueschar>.
    <ls_allocvalueschar>-charact = 'INTERNAL_ORDER'.
  ENDIF.
  <ls_allocvalueschar>-value_char = <ls_allocvalueschar>-value_neutral = is_aufk-aufnr.

  SET UPDATE TASK LOCAL.
  CALL FUNCTION 'BAPI_OBJCL_CHANGE'
    EXPORTING
      objectkey                = lv_objectkey
      objecttable              = lv_objecttable
      classnum                 = lv_classnum
      classtype                = lv_classtype
    TABLES
      allocvaluesnumnew        = lt_allocvaluesnum
      allocvaluescharnew       = lt_allocvalueschar
      allocvaluescurrnew       = lt_allocvaluescurr
      return                   = lt_return
  .
  LOOP AT lt_return INTO ls_return
                    WHERE type CA 'AEX'.
    MESSAGE ID ls_return-id TYPE ls_return-type NUMBER ls_return-number RAISING error
            WITH ls_return-message_v1 ls_return-message_v2 ls_return-message_v3 ls_return-message_v4.
  ENDLOOP.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Заполнение признака классификации в IE02.
СообщениеДобавлено: Вт, фев 28 2017, 16:52 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Ср, май 23 2012, 14:38
Сообщения: 30
Пол: Мужской
UKY написал(а):
Нужно использовать BAPI_OBJCL_CHANGE.
Чтобы не затирались предыдущие данные необходимо считывать предыдущие признаки при помощи BAPI_OBJCL_GETDETAIL.


Спасибо!
Заказчик все-таки очень хочет, чтобы признаки заполнялись "на лету". Монтировали ЕО - и сразу на вкладке "Характеристики" заполнился признак "Дата монтажа", например.


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

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


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

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


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

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