Автор Тема: Переход к просмотру различных документов MM/FI/CO/FM и т.д.  (Прочитано 34097 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
В общем в различных отчетах приходится иногда давать пользователю возможность перейти к просмотру документа стандартной транзакцией, например для документа материала это будет или MB03 или MIGO в режиме просмотра. Тут предлагается выложить варианты перехода к просмотру, так как не всегда это бывает очевидно, особенно в энжой-транзакциях.

Документ материала, транзакция MIGO. Переход к просмотру документа:
Код: You are not allowed to view links. Register or Login
  CALL FUNCTION 'MIGO_DIALOG'
    EXPORTING
      i_mblnr             = mblnr  "Номер документа
      i_mjahr             = mjahr  "Год документа
    EXCEPTIONS
      illegal_combination = 1
      OTHERS              = 2.

Просмотр документа FI
Код: You are not allowed to view links. Register or Login
    SET PARAMETER ID 'BLN' FIELD belnr.   "Номер документа
    SET PARAMETER ID 'BUK' FIELD bukrs.  "Код БЕ
    SET PARAMETER ID 'GJR' FIELD gjahr.    "Год документа
    CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

Просмотр документа отпуска на основные средства, если есть документ движения материала
Код: You are not allowed to view links. Register or Login
DATA: ls_anla LIKE anla,
      l_aworg LIKE anek-aworg.

ls_anla-anln1 = '*'.
l_aworg = mjahr.   "Год документа движения материала
CALL FUNCTION 'AM_SHOW_DOCUMENT'
  EXPORTING
    i_anla    = ls_anla
    i_gjahr   = '0000'
    i_awtyp   = 'MKPF'
    i_awsys   = ps_matnr-awsys
    i_aworg   = l_aworg
    i_belnr   = mblnr    "Номер документа движения материала
  EXCEPTIONS
    not_found = 01.

Документ управления бюджета FM
Код: You are not allowed to view links. Register or Login
  DATA: ls_control_data TYPE fmfi_control_data.

    CALL FUNCTION 'FMCA_GET_INIT_INFO'
      EXPORTING
        i_bukrs          = bukrs_fb  "Код БЕ для которой будет выполнен просмотр
      CHANGING
        c_f_control_data = ls_control_data.

    SET PARAMETER ID 'FIK' FIELD ls_control_data-fikrs.
    SET PARAMETER ID 'FMB' FIELD belnr_fb.   "Номер документа FM
    CALL TRANSACTION 'FM03' AND SKIP FIRST SCREEN.

Просмотр документа СО
Код: You are not allowed to view links. Register or Login
    SET PARAMETER ID 'BLN' FIELD belnr_co.   "Номер документа СО
    SET PARAMETER ID 'CAC' FIELD bukrs_co.  "БЕ документа СО
    SET PARAMETER ID 'TPB' FIELD '0'.
    CALL TRANSACTION 'KSB5' AND SKIP FIRST SCREEN.

Оффлайн NachDenken

  • Newbie
  • *
  • Сообщений: 158
  • Репутация: +9/-0
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
*Для входящей поставки
SET PARAMETER ID 'VLM' FIELD vbeln.
CALL TRANSACTION 'VL33N' AND SKIP FIRST SCREEN.

*Для исходящей
SET PARAMETER ID 'VL' FIELD vbeln.
CALL TRANSACTION 'VL03N' AND SKIP FIRST SCREEN.
* Для заказа
SET PARAMETER ID 'BES' FIELD ebeln.
CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.

Общий принцип заходим в тр смотрим, какие параметры просит для просмотра документа (f1 на поле и название "ID SET/GET Parametr") и пишем их

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
Общий принцип заходим в тр смотрим, какие параметры просит для просмотра документа (f1 на поле и название "ID SET/GET Parametr") и пишем их
Ну общий принцип к сожалению не всегда срабатывает сейчас, так что опыт приветствуется.

Оффлайн Dmitriy

  • SAP ECC 6.0
  • Moderator
  • Newbie
  • *****
  • Сообщений: 380
  • Репутация: +0/-0
  • Пол: Мужской
  • Embracive Fire
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Код: You are not allowed to view links. Register or Login
*&---------------------------------------------------------------------*
*&      Form  ALV_HOTSPOT_CLICK
*&---------------------------------------------------------------------*
FORM alv_hotspot_click USING p_row_id TYPE lvc_s_row
                             p_col_id TYPE lvc_s_col.
  DATA: ls TYPE t_main.
  READ TABLE gt_main INTO ls INDEX p_row_id-index.
  CHECK sy-subrc = 0.
  CASE p_col_id-fieldname.
    WHEN 'VBELN_VA'. " заказ
      CHECK ls-vbeln_va IS NOT INITIAL.
      CASE ls-vgtyp.
        WHEN 'V'. " PO
          SET PARAMETER ID 'BES' FIELD ls-vbeln_va.
          CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
        WHEN OTHERS. " SO
          SET PARAMETER ID 'AUN' FIELD ls-vbeln_va.
          CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
      ENDCASE.
    WHEN 'VBELN_VL'. " поставка
      CHECK ls-vbeln_vl IS NOT INITIAL.
      CASE ls-abfer.
        WHEN '2'. " входящая
          SET PARAMETER ID 'VLM' FIELD ls-vbeln_vl. " or 'VLG'
          CALL TRANSACTION 'VL33N' AND SKIP FIRST SCREEN.
        WHEN OTHERS. " исходящая
          SET PARAMETER ID 'VL' FIELD ls-vbeln_vl.
          CALL TRANSACTION 'VL03N' AND SKIP FIRST SCREEN.
      ENDCASE.
    WHEN 'TKNUM'. " транспортировка
      CHECK ls-tknum IS NOT INITIAL.
      SET PARAMETER ID 'TNR' FIELD ls-tknum.
      CALL TRANSACTION 'VT03N' AND SKIP FIRST SCREEN.
    WHEN 'VBELN_VF'. " фактура
      CHECK ls-vbeln_vf IS NOT INITIAL.
      CASE ls-abfer.
        WHEN '2'. " входящая
          CHECK ls-gjahr IS NOT INITIAL.
          SET PARAMETER ID 'RBN' FIELD ls-vbeln_vf.
          SET PARAMETER ID 'GJR' FIELD ls-gjahr.
          CALL TRANSACTION 'MIR4' AND SKIP FIRST SCREEN.
        WHEN OTHERS. " исходящая
          SET PARAMETER ID 'VF' FIELD ls-vbeln_vf.
          CALL TRANSACTION 'VF03' AND SKIP FIRST SCREEN.
      ENDCASE.
    WHEN 'BELNR'. " FI-документ (фактура)
      CHECK ls-bukrs IS NOT INITIAL
        AND ls-belnr IS NOT INITIAL
        AND ls-gjahr IS NOT INITIAL.
      SET PARAMETER ID 'BUK' FIELD ls-bukrs.
      SET PARAMETER ID 'BLN' FIELD ls-belnr.
      SET PARAMETER ID 'GJR' FIELD ls-gjahr.
      CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
    WHEN 'SUBMI'. " групповой №
      CHECK ls-submi IS NOT INITIAL.
      SET PARAMETER ID 'BES' FIELD ls-submi.
      CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
  ENDCASE.
ENDFORM.                    " ALV_HOTSPOT_CLICK

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
Код: You are not allowed to view links. Register or Login
     SET PARAMETER ID 'BES' FIELD ls-submi.
      CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
Для заказа ММ внутри SAP делает чуть более кошерный вызов заказа ММ, типа так:
Код: You are not allowed to view links. Register or Login
       SET PARAMETER ID 'BES' FIELD hidk-ebeln.
        CALL FUNCTION 'ME_DISPLAY_PURCHASE_DOCUMENT'
          EXPORTING
            i_ebeln = hidk-ebeln
            i_ebelp = hidp-ebelp
            i_enjoy = 'X'
          EXCEPTIONS
            OTHERS  = 1.
*      Если таки ошибка.. то вывести ее так...
        IF sy-subrc NE 0.
          MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
Данный вызов, сразу позволяет открыть для просмотра не только заказ, но и требуемую позицию заказа в нижней закладке подробно.
« Последнее редактирование: Май 23, 2011, 03:32:41 pm от Uukrul »

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
EBELP ;)
Ну тогда дожму... для просмотра заявок на закупку, использовать следующий код:
Код: You are not allowed to view links. Register or Login
          CALL FUNCTION 'MMPUR_REQUISITION_DISPLAY'
            EXPORTING
              im_banfn        = eban-banfn
              im_bnfpo        = eban-bnfpo
              im_display_only = 'X'
            EXCEPTIONS
              no_authority    = 1
              OTHERS          = 2.
          IF sy-subrc <> 0.
            MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
                    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
          ENDIF.
Заметь табличку заявок не я так назвал ::)

Оффлайн Dmitriy

  • SAP ECC 6.0
  • Moderator
  • Newbie
  • *****
  • Сообщений: 380
  • Репутация: +0/-0
  • Пол: Мужской
  • Embracive Fire
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Да, норм., лучше ещё в минимакрос обернуть вот это:
Код: You are not allowed to view links. Register or Login
          MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

Оффлайн Dmitriy

  • SAP ECC 6.0
  • Moderator
  • Newbie
  • *****
  • Сообщений: 380
  • Репутация: +0/-0
  • Пол: Мужской
  • Embracive Fire
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Т.е. создать ряд постоянных процедур в своём INCLUDE. И юзать постоянно их... ;)

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Просмотр документа резервирования материала. Просмотреть сам документ резервирования довольно просто.
Код: You are not allowed to view links. Register or Login
SET PARAMETER ID 'RES' FIELD x-rsnum.
CALL TRANSACTION 'MB23' AND SKIP FIRST SCREEN.

Более сложная задача оказалась, когда потребовалось при просмотре перейти с детальному экрану позиции резервирования. При просмотре экрана оказалось оказалось что поле ввода позиции присутствует и есть параметр для задания номера просматриваемой позиции - RPO.
Код: You are not allowed to view links. Register or Login
SET PARAMETER ID 'RES' FIELD x-rsnum..
SET PARAMETER ID 'RPO' FIELD x-rspos.
CALL TRANSACTION 'MB23' AND SKIP FIRST SCREEN.

В довесок походив по коду, обнаружил интересную вещь, оказалось можно задать просмотр например группы позиций, причем последовательность может включать в себя как позиции одного резервирования так и позиции разных резервирований. При этом на экране  просмотра  появляются стрелки  навигации по позициям. Для этого необходимо заполнить специальную структуру документов и позиций и передать ее через специальный параметр.
Код: You are not allowed to view links. Register or Login
  DATA: BEGIN OF seltab1 OCCURS 0,
          rsnum LIKE rkpf-rsnum,
          rspos LIKE resb-rspos,
          rsart LIKE resb-rsart,
          xexpl,
        END OF seltab1.

*         Позиции документов для просмотра подробно
          CLEAR: seltab1[].
          seltab1-rsnum = <документ>.
          seltab1-rspos = <позиция документа>.
          APPEND seltab1.

          seltab1-rsnum = <документ>.
          seltab1-rspos = <позиция документа>.
          APPEND seltab1.

*         Передать список позиций в память.
          EXPORT seltab1 TO MEMORY ID 'MB23_SELTAB'.

*         Задать первую позицию, которая будет показана при вызове
          SET PARAMETER ID 'RES' FIELD x-rsnum.
          SET PARAMETER ID 'RPO' FIELD x-rspos.
          CALL TRANSACTION 'MB23' AND SKIP FIRST SCREEN.
При таком вызове на экране, в строке статуса, будут выведены кнопки навигации, рисунок MB23LIST.png
« Последнее редактирование: Декабрь 14, 2014, 03:05:53 am от Uukrul »

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Просмотр технологических заказов. Казалось бы все очень просто, есть поле, есть параметр, пример на картинке COR3.png и все работает. А оказалось не все так просто. Не знаю с какого бодуна, но разработчикам было глубоко пофигу что там за код параметра указан в поле. Мы типа и сами знаем что и как надо, поэтому в PBO-коде экрана 5110, неведомые пацаны абаперы добавили такой вот код
Код: You are not allowed to view links. Register or Login
* Lesen GET_PARAMETER von Einsatzplanung (Читайте GET_PARAMETER календарного планирования)
  module get_parameter.
Поэтому внутри такое:
Код: You are not allowed to view links. Register or Login
  if caufvd-aufnr is initial.
    get parameter id 'BR1' field *caufvd-aufnr.
    if not *caufvd-aufnr is initial.
      caufvd-aufnr = *caufvd-aufnr.
    endif.
  endif.
Так что правильный вызов просмотра технологического заказа будет такой:
Код: You are not allowed to view links. Register or Login
SET PARAMETER ID 'BR1' FIELD l_aufnr.
CALL TRANSACTION 'COR3' AND SKIP FIRST SCREEN.
Не ну нам, приближенным к абаперам, то в принципе не сложно посмотреть что читать надо "GET_PARAMETER календарного планирования", но другим то что делать? Шалуны однако эти абаперы.

Оффлайн vorrutyer

  • Newbie
  • *
  • Сообщений: 5
  • Репутация: +2/-0
  • Пол: Мужской
  • Бойцовый кот нигде не пропадёт!!!
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Вобщем - понадобилось мне однажды сделать из Z-отчета проваливание в CO документ (тот что в табл. COBK/COEP).
Посмотрел как реализовано проваливание в него стандартом, и заодно нарыл интересный ФМ.
Код: You are not allowed to view links. Register or Login
CALL FUNCTION 'DRB_OBJECT_DISPLAY'
  EXPORTING
    i_boridein = z_borident
  TABLES
    t_messages = t_messages.
i_boridein  - запись, содержит 2 поля - ключ i_boridein-objkey и тип объекта i_boridein-objtype.
Для CO документа было так
i_boridein-objkey = KOKRS + BELNR
i_boridein-objtype = 'BUS2072'.
Но вот что интересно - если поставить другой тип объекта и его ключ - все равно будет работать.
Проверил на заказе на поставку BUS2012, материале BUS1001 - работает.
На других не пробовал, но предполагаю что сработает :)
Единственное но - несмотря на то что  t_messages не обязательна, при неуказании этого параметра почему то происходит выбивание текущего режима :( 


Оффлайн vorrutyer

  • Newbie
  • *
  • Сообщений: 5
  • Репутация: +2/-0
  • Пол: Мужской
  • Бойцовый кот нигде не пропадёт!!!
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Business Object смотреть в SWO4.
В ключ вставлять значения во внутреннем формате полей ключа.

Оффлайн vorrutyer

  • Newbie
  • *
  • Сообщений: 5
  • Репутация: +2/-0
  • Пол: Мужской
  • Бойцовый кот нигде не пропадёт!!!
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
Хорошая штука DRB_OBJECT_DISPLAY оказалась.
Отображает все логистические документы, которые мне нужно было вывести.
Ну и не только логистические.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Просмотр ракурса закупки для основной записи материала 'MMPUR_MATERIAL_DISPLAY
Код: You are not allowed to view links. Register or Login
CALL FUNCTION 'MMPUR_MATERIAL_DISPLAY'
        EXPORTING
          im_matnr = cs_appref-mm_matnr
          im_werks = cs_appref-mm_werks
          im_lgort = cs_appref-mm_lgort.
По параметрам все вроде как просто, передали код ОЗМ, завод и склад, последние два параметра не обязательны и система перейдет к просмотру карточки ОЗМ, ракурс закупки, по факту будет вызвана MM03 с предварительной проверкой полномочий.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Документ счет-факутура логистики, транзакции MIRO и MIR4, доступны два варианта.

Вывод через вызов CALL TRANSACTION
Код: You are not allowed to view links. Register or Login
SET PARAMETER ID 'RBN' FIELD ls_data_miro-belnr.    "Номер документа счета логистки
SET PARAMETER ID 'GJR' FIELD ls_data_miro-gjahr.    "Год документа счета логистики

CALL TRANSACTION 'MIR4' AND SKIP FIRST SCREEN.
И второй вариант через функциональный модуль DRB_OBJECT_DISPLAY,  таки нужно передавать тип объекта, так как без этого, только ключа не достаточно
Код: You are not allowed to view links. Register or Login
DATA: z_borident TYPE BORIDENT.

z_borident-OBJTYPE = 'BUS2081'.
CONCATENATE ls_data_miro-belnr ls_data_miro-gjahr INTO z_borident-OBJKEY.
CALL FUNCTION 'DRB_OBJECT_DISPLAY'
  EXPORTING
    i_boridein = z_borident
  TABLES
    t_messages = t_messages.

Оффлайн tanyxa

  • Newbie
  • *
  • Сообщений: 27
  • Репутация: +2/-0
  • YearsYearsYearsYearsYearsYearsYearsYearsYears
Вроде не было еще:
Понадобилось провалиться сразу в строку FI документа, подобно как в транзакции FBL5N

Код: You are not allowed to view links. Register or Login
set parameter id:
 'BLN' field belnr,    "Номер документа
 'BUK' field bukrs,  "Номер документа
 'GJR' field gjahr,    "Год документа
 'BUZ' field buzei.   "Позиция документа

 call transaction 'FB09D' and skip first screen.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Просмотр документа резервирования средств FM
Код: You are not allowed to view links. Register or Login
        CALL FUNCTION 'FMFR_RESERVATION_TRANSACTION'
          EXPORTING
            i_activity         = '03'
            i_belnr            = l_belnr
          EXCEPTIONS
            doctype_not_found  = 1
            activity_not_found = 2
            document_not_found = 3
            OTHERS             = 4.
Полезный модуль, можно как просмотреть документ так его отредактировать или создать. Управляет этим делом параметр I_ACTIVITY, в общем то, стандартный набор 01 - создать, 02 - изменить, тогда надо заполнить номер документа и 03 - просмотреть. Самое интересное что стандартно через CALL TRANSACTION для транзакции FMX3 - просмотр, работать не будет. Они внутри кода глубоко забили на SET/GET параметры номера документа.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Просмотр документа DMS (транзакции CV01N / CV02N / CV03N). В общем-то как говорит SAP, данный модуль типа не очень актуален, но как по мне, вполне еще живой, вот пришлось тут на днях рисовать такой переход:
Код: You are not allowed to view links. Register or Login
              SET PARAMETER ID 'CV1' FIELD ls_ekko-doknr.  "Тип документа
              SET PARAMETER ID 'CV2' FIELD ls_ekko-dokar.  "Номер документа
              SET PARAMETER ID 'CV3' FIELD ls_ekko-dokvr.  "Версія документа
              SET PARAMETER ID 'CV4' FIELD ls_ekko-doktl.  "Часть документа

              CALL TRANSACTION 'CV03N' AND SKIP FIRST SCREEN.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
Хорошая штука DRB_OBJECT_DISPLAY оказалась.
В общем просмотр некоторых документов используя данную функцию, действительно вещь полезная  8):

Документы поставки сбыта
Код: You are not allowed to view links. Register or Login
        ls_borident-objtype = 'LIKP'.
        ls_borident-objkey = ls_data-vbeln.
        CALL FUNCTION 'DRB_OBJECT_DISPLAY'
          EXPORTING
            i_borident = ls_borident
          TABLES
            t_messages = lt_messages.

Контролинговые CO-заказы
Код: You are not allowed to view links. Register or Login
        ls_borident-objtype = 'BUS2075'.
        ls_borident-objkey = ls_data-aufnr.
        CALL FUNCTION 'DRB_OBJECT_DISPLAY'
          EXPORTING
            i_borident = ls_borident
          TABLES
            t_messages = lt_messages.

Заказы сбыта
Код: You are not allowed to view links. Register or Login
        ext_to_int: ls_data-vgbel ls_data-vgbel.
        ls_borident-objtype = 'BUS2032'.
        ls_borident-objkey = ls_data-vgbel.
        CALL FUNCTION 'DRB_OBJECT_DISPLAY'
          EXPORTING
            i_borident = ls_borident
          TABLES
            t_messages = lt_messages.

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 809
  • Репутация: +47/-0
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Подогнали пример работы с бизнес-партнером, еслни нужно вызвать транзакцию «BP» с определенной балансовой единицей, как это сделать? Чтобы решить вопрос, нужно использовать класс CL_BUPA_DIALOG_JOEL и его метод START_WITH_NAVIGATION. Ниже приведен код, как это сделать.
Код: You are not allowed to view links. Register or Login
CONSTANTS:
  gc_activity_create  TYPE bu_aktyp VALUE '01',
  gc_activity_change  TYPE bu_aktyp VALUE '02',
  gc_activity_display TYPE bu_aktyp VALUE '03'.

PARAMETERS: p_bp TYPE bu_partner.
PARAMETERS: p_cc TYPE bukrs.

START-OF-SELECTION.
  PERFORM open_bp USING p_bp p_cc gc_activity_change.

FORM open_bp
  USING
    iv_bp TYPE bu_partner
    iv_cc TYPE bukrs
    iv_activity TYPE bu_aktyp.

  DATA:
    ls_role TYPE bus_roles.

  " need to set it as a parameter
  " so that it's read in the Company Code subscreen
  SET PARAMETER ID 'BUK' FIELD iv_cc.

  " create new request
  DATA(lo_request) = NEW cl_bupa_navigation_request( ).
  " open request with selected partner number
  lo_request->set_partner_number( iv_bp ).
  " set the activity you want the user to start the maintenance with
  lo_request->set_bupa_activity( iv_activity ). " 01 - Create, 02 - Change, 03 - Display

  " change the role of the BP to the desired one
  " together with the sub header id
  ls_role-role = 'FS0000'.
  lo_request->set_bupa_partner_role( ls_role ).
  lo_request->set_bupa_sub_header_id( 'FS0001' ).

  " display general data by default
  lo_request->set_maintenance_id( 'B' ). " B - Partner

  " set start-up options
  DATA(lo_options) = NEW cl_bupa_dialog_joel_options( ).
  " start the transaction with an invisible locator
  lo_options->set_locator_visible( space ).

  " open New BDT Instance for display of selected partner
  CALL METHOD cl_bupa_dialog_joel=>start_with_navigation
    EXPORTING
      iv_request              = lo_request
      iv_options              = lo_options
      iv_in_new_internal_mode = abap_true
    EXCEPTIONS
      already_started         = 1
      not_allowed             = 2
      OTHERS                  = 3.
ENDFORM.

Оригинал примера взят отсюда: You are not allowed to view links. Register or Login

Sapforum.Biz