Текущее время: Ср, июн 25 2025, 20:37

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




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 13:55 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Требуется использовать для деривации поле VBAK-VKBUR. В CI_COBL добавили поле ZZVKBUR, которое заполняется из FM_ONLINE_ASSIGNMENT (юзер-экзит из SAPMV45A тоже пробовали).

Далее в EXIT_SAPLFMDT_002 присваиваем FMDERIVE-VKBUR значение COBL-ZZVKBUR. Значение в поле COBL-ZZVKBUR пустое.

По пути из SD в FM где-то в районе SAPLFMOI (Процедурка SO_GET_INIT_INFO) COBL собрался заново и никакие значения из старого COBL, собранного заказом, не сохранились.

Так и должно быть?

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 14:24 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, фев 01 2006, 16:49
Сообщения: 1967
Откуда: Питерский Москвич
Пол: Мужской
Я бы не использовал CI_COBL, а сделал так:
1. В тр. FMDERIVE шаг с расширением (расширение SAPLFMDT Koмпонент 001) с условиями и идентификатором шага.
2. User-Exit EXIT_SAPLFMDT_001 в проекте Z* (тр. CMOD)
3.
Code:
data: v(30) value '(SAPMV45A)VBAK'.
if i_fmderive_source-transac = 'SDOR' and i_step_id = 'идентификатором шага' and ( syst-tcode = 'VA31' or syst-tcode = 'VA01' ).
  field-symbols: <fs_vbak> like vbak.
  assign (v) to <fs_vbak>.
  ... "Используем данные из VBAK
  e_fmderive_target-commit_item = Нужная ФП
  e_exit_is_active = 'X'. "Обязательно!!!
...

_________________
Материалы по S/4HANA (установка и активация компонентов, FIORI, ACR, CIT, PaPM(FS-PER)) на моем сайте planksap.pro


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 14:35 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Воровать данные -- это вариант, но крайний.

Хотелось бы чего-нибудь чуть более элегантного.

Plank написал:
Я бы не использовал CI_COBL, а сделал так:
1. В тр. FMDERIVE шаг с расширением (расширение SAPLFMDT Koмпонент 001) с условиями и идентификатором шага.
2. User-Exit EXIT_SAPLFMDT_001 в проекте Z* (тр. CMOD)
3.
Code:
data: v(30) value '(SAPMV45A)VBAK'.
if i_fmderive_source-transac = 'SDOR' and i_step_id = 'идентификатором шага' and ( syst-tcode = 'VA31' or syst-tcode = 'VA01' ).
  field-symbols: <fs_vbak> like vbak.
  assign (v) to <fs_vbak>.
  ... "Используем данные из VBAK
  e_fmderive_target-commit_item = Нужная ФП
  e_exit_is_active = 'X'. "Обязательно!!!
...


Притом что именно это решение для нас в принципе не годится.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа  Тема решена
СообщениеДобавлено: Пт, май 20 2011, 15:02 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Решение для полей деривации:

ZZ[поле] в COBL.

Расширяем структуру PSFM_FIELDS этим же полем. Далее в программе RMCSS008 делаем расширение

Code:
* VBAK
FORM acctsd_move_from_vbak  USING    xmcvbak    STRUCTURE mcvbakb
                                     us_supkz
                            CHANGING int_acctsd STRUCTURE acctsd.
  int_acctsd-mandt = xmcvbak-mandt.
  IF t000-mandt IS INITIAL AND
     t000-mtext IS INITIAL AND
     t000-ort01 IS INITIAL.
    SELECT SINGLE * FROM t000 WHERE mandt = xmcvbak-mandt.
  ENDIF.
  int_acctsd-awsys = t000-logsys.
  int_acctsd-awref = xmcvbak-vbeln.
  int_acctsd-twaer = xmcvbak-waerk.
  int_acctsd-hwaer = xmcvbak-hwaer.
  int_acctsd-bukrs = xmcvbak-bukrs.
  int_acctsd-kunrg = xmcvbak-pkunrg.
  int_acctsd-gsber = xmcvbak-gsber.
  int_acctsd-bldat = xmcvbak-audat.
  int_acctsd-erdat = xmcvbak-erdat.
  int_acctsd-pspnr = xmcvbak-ps_psp_pnr.
  int_acctsd-vkorg = xmcvbak-vkorg.
  int_acctsd-spart = xmcvbak-spart.
  int_acctsd-vtweg = xmcvbak-vtweg.
* INT_ACCTSD-????? = XMCVBAK-KUNNR.
* INT_ACCTSD-FISTL = xmCVBAK-FISTL.
* INT_ACCTSD-GEBER = xmCVBAK-GEBER.
* INT_ACCTSD-FIPOS = xmCVBAK-FIPOS.
  int_acctsd-auart = xmcvbak-auart.
  int_acctsd-kunnr = xmcvbak-kunnr.
  int_acctsd-kostl = xmcvbak-kostl.
  int_acctsd-vbtyp = xmcvbak-vbtyp.

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""$"$\SE:(1) FORM ACCTSD_MOVE_FROM_VBAK, Выход                                                                                                                 A
*$*$-Start: (1)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1  ZFI_RMCSS008.    "active version
  int_acctsd-zzvkbur = xmcvbak-vkbur.
ENDENHANCEMENT.
*$*$-End:   (1)---------------------------------------------------------------------------------$*$*
ENDFORM.                    "acctsd_move_from_vbak


Далее поле заполняется в I_COBL и может использоваться в экзитах.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 16:25 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, фев 01 2006, 16:49
Сообщения: 1967
Откуда: Питерский Москвич
Пол: Мужской
Расширять структуру общую для множества функциональностей черевато (dante14 как-то говорил об этом) и совсем не элегантно.
Лучше у себя, в FM, никого не трогая "воровать" :D
Но вам виднее...

_________________
Материалы по S/4HANA (установка и активация компонентов, FIORI, ACR, CIT, PaPM(FS-PER)) на моем сайте planksap.pro


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 20:07 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Plank написал:
Расширять структуру общую для множества функциональностей черевато (dante14 как-то говорил об этом) и совсем не элегантно.
Лучше у себя, в FM, никого не трогая "воровать" :D
Но вам виднее...


Или мошенничать. ^__^ Мы чтим уголовный кодекс.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 21:35 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Ср, фев 01 2006, 16:49
Сообщения: 1967
Откуда: Питерский Москвич
Пол: Мужской
У вас какое-то болезненное отношение к assign, советую его пересмотреть...

_________________
Материалы по S/4HANA (установка и активация компонентов, FIORI, ACR, CIT, PaPM(FS-PER)) на моем сайте planksap.pro


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Пт, май 20 2011, 21:48 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Plank написал:
У вас какое-то болезненное отношение к assign, советую его пересмотреть...


Оффтопик же. ^___^

Просто наплавался.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Чт, май 24 2012, 18:30 
Начинающий
Начинающий

Зарегистрирован:
Пт, янв 20 2012, 08:47
Сообщения: 5
добрый день!

вы обсуждаете перенос поля в деривацию из торгового документа,
мне надо в деривацию передать EBAN-BSART
какое использовать расширение для экспорта в память вида заявки? расширения из MEREQ001, COZF0002 не подходят (вызов после деривации), среди BadI не нашла


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Перенос полей в COBL для деривации из торгового документа
СообщениеДобавлено: Чт, июн 06 2013, 11:09 
Специалист
Специалист

Зарегистрирован:
Ср, янв 18 2012, 13:43
Сообщения: 120
Plank написал:
Я бы не использовал CI_COBL, а сделал так:
1. В тр. FMDERIVE шаг с расширением (расширение SAPLFMDT Koмпонент 001) с условиями и идентификатором шага.
2. User-Exit EXIT_SAPLFMDT_001 в проекте Z* (тр. CMOD)
3.
Code:
data: v(30) value '(SAPMV45A)VBAK'.
if i_fmderive_source-transac = 'SDOR' and i_step_id = 'идентификатором шага' and ( syst-tcode = 'VA31' or syst-tcode = 'VA01' ).
  field-symbols: <fs_vbak> like vbak.
  assign (v) to <fs_vbak>.
  ... "Используем данные из VBAK
  e_fmderive_target-commit_item = Нужная ФП
  e_exit_is_active = 'X'. "Обязательно!!!
...




Plank, а подскажите пожалуйста параметр i_step_id что это такое? и где его нужно определить?

я просто тоже пытаюсь применить это расширение.


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

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


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

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


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

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