Текущее время: Вт, апр 16 2024, 15:42

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




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Копирование предложений из одного конкурса в другой
СообщениеДобавлено: Ср, фев 20 2013, 19:30 
Начинающий
Начинающий

Зарегистрирован:
Чт, мар 15 2012, 18:33
Сообщения: 10
Есть ли какой-нибудь готовый FM. Если нет, то как заполнить альтернативные элементы в структуре i_add_items в fm BBP_PD_QUOT_CREATE


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Копирование предложений из одного конкурса в другой
СообщениеДобавлено: Вт, мар 05 2013, 11:15 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Вт, авг 03 2010, 11:15
Сообщения: 78
fedor_sh написал(а):
Есть ли какой-нибудь готовый FM. Если нет, то как заполнить альтернативные элементы в структуре i_add_items в fm BBP_PD_QUOT_CREATE


Если не ошибаюсь, то i_add_items необходимо заполнять, если Вы добавляете какие-либо позиции в предложение. Но если все же речь идет о копировании, то необходимо считать все таблицы и структуры используя ФМ BBP_PD_QUOT_GETDETAIL и передавать их на вход в ФМ BBP_PD_QUOT_CREATE.

Code:
" Получаем данные предложения-источника
  CALL FUNCTION 'BBP_PD_QUOT_RESET_BUFFER'.
  CALL FUNCTION 'BBP_PD_QUOT_GETDETAIL'
   EXPORTING
     I_GUID                            = i_source_qte_guid
     I_WITH_ITEMDATA                   = 'X'
   IMPORTING
     E_HEADER                          = lv_header
     ET_ATTACH                         = lt_attach
   TABLES
     E_ITEM                            = lt_item
     E_PARTNER                         = lt_partner
     E_LONGTEXT                        = lt_longtext
     E_ORGDATA                         = lt_orgdata
     ET_EXCHRATE                       = lt_exchrate
            .
...
" Получаем данные целевого конкурса
CALL FUNCTION 'BBP_PROCDOC_GETDETAIL'
    EXPORTING
      i_guid            = i_target_rfq_guid
      i_with_itemdata   = 'X'
      i_read_text_flags = lv_read_text_flags
    TABLES
      e_item            = lt_rfq_item.
...

CALL FUNCTION 'GUID_CREATE'
        IMPORTING
          EV_GUID_16       = lv_new_guid.

" Цикл по позициям предложения-источника
  LOOP AT lt_item INTO lv_item.
    MOVE-CORRESPONDING lv_item TO lv_item_new.
    lv_item_new-parent = lv_new_guid.
    READ TABLE lt_rfq_item
         INTO lv_rfq_item
         WITH KEY number_int = lv_item-number_int.
    lv_item_new-src_guid = lv_rfq_item-guid.
  ENDLOOP.
...
  LOOP AT lt_partner ASSIGNING <ls_partner>.
    <ls_partner>-p_guid = lv_new_guid.
  ENDLOOP.

clear: lv_header-object_id,
         lv_header-approval_ind.

lv_header-src_guid = I_TARGET_RFQ_GUID.
lv_header-guid = lv_new_guid.
MOVE-CORRESPONDING lv_header to lv_header_1.

CALL FUNCTION 'BBP_PD_QUOT_CREATE'
   EXPORTING
     I_SRC_GUID                        = i_target_rfq_guid
     I_SRC_OBJECT_TYPE                 = /sapsrm/if_pdo_obj_types_c=>gc_pdo_biddingdoc
     I_HEADER                          = lv_header_1
     IT_ATTACH                         = lt_attach
     I_ITEM_SORTED_BY_HIERARCHY        = abap_false
   IMPORTING
     E_HEADER                          = lv_header_new
    TABLES
     I_ITEM                            = lt_item_new
     I_PARTNER                         = lt_partner
     I_LONGTEXT                        = lt_longtext[]
     E_ITEM                            = lt_ITEM_quot
     E_MESSAGES                        = lt_mess
            .

CALL FUNCTION 'BBP_PD_QUOT_SAVE'
EXPORTING
   IV_HEADER_GUID               = e_target_guid
          .

  COMMIT WORK AND WAIT.


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

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


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

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


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

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