Текущее время: Пт, июл 18 2025, 04:23

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Работа ФМ в OpenFI
СообщениеДобавлено: Чт, май 04 2006, 08:02 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Может кто подскажет, не пойму почему, после выполнения необходимых действий с таблицами T_BKPF, T_BSEG и т.д. необходимо их переносить в вызывающий ФМ, напр. OPEN_FI_PERFORM_00001020_E при помощи EXPORT/IMPORT?
Единственное, что приходит на ум - мои ФМ стартуют в другой сессии?
Если так то почему? Так же интересно почему в модулях например
OPEN_FI_PERFORM_00001011_E нет такой передачи.
Если долго объяснять укажите направление где копать.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Работа ФМ в OpenFI
СообщениеДобавлено: Чт, май 04 2006, 09:45 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Вт, авг 17 2004, 14:35
Сообщения: 1519
Откуда: В ВЕЧНОМ БАНЕ
Aval написал:
Может кто подскажет, не пойму почему, после выполнения необходимых действий с таблицами T_BKPF, T_BSEG и т.д. необходимо их переносить в вызывающий ФМ, напр. OPEN_FI_PERFORM_00001020_E при помощи EXPORT/IMPORT?
Единственное, что приходит на ум - мои ФМ стартуют в другой сессии?
Если так то почему? Так же интересно почему в модулях например
OPEN_FI_PERFORM_00001011_E нет такой передачи.
Если долго объяснять укажите направление где копать.

Потому что разработчики посчитали что нефиг менять в этом событии данные таблиц и перед передачей тебе управления делают сначала экспорт данных, а при выходе назад импорт и все что ты меняешь пропадает, вот поэтому и приходится искать обходные пути... а вообще-то чем дальше тем все дырок меньше и уже в 4.7 чтобы все работало по старому надо применять ноты... а это говорит что пусть этот уже закрыт и лучеш искать дргуие пути :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 09:52 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
В общем ясно, но не понятно зачем тогда это событие надо, если все таблицы прикрыты от изменения, в смысле разработчики не рекомендуют? Что по Вашему мнению они предполагают здесь можно сделать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 12:11 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, май 03 2006, 12:21
Сообщения: 3
Если хочется вклиниться в логику и изменить данные, нужно использовать не P/S-модули, а модули процесса.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 14:14 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Это вот эти что ли:
Code:
function open_fi_perform_00001120_p.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(I_BKDF) TYPE  BKDF OPTIONAL
*"  TABLES
*"      T_BKPF STRUCTURE  BKPF
*"      T_BSEG STRUCTURE  BSEG
*"      T_BKPFSUB STRUCTURE  BKPF_SUBST
*"      T_BSEGSUB STRUCTURE  BSEG_SUBST
*"      T_BSEC STRUCTURE  BSEC OPTIONAL
*"  CHANGING
*"     REFERENCE(I_BKDFSUB) TYPE  BKDF_SUBST OPTIONAL
*"  EXCEPTIONS
*"      NOTHING_ACTIVE
*"      WRONG_SUBST
*"----------------------------------------------------------------------
  call function 'PC_FUNCTION_FIND'
       exporting
            i_procs       = '00001120'
       tables
            t_fmrfc       = fmtab
       exceptions
            nothing_found = 4
            others        = 8.
  if sy-subrc ne 0.
    message s015 with '00001120' raising nothing_active.
  endif.

*---------- Contents of fields that can be substituted -----------------
  perform bkpfsub_fill tables t_bkpfsub.
  perform bsegsub_fill tables t_bsegsub.

*------------------ Save interface data --------------------------------
  memid+6 = '00001120P'.
  export t_bkpf t_bseg t_bsec to memory id memid.          "Note 569711

В них тоже EXPORT есть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, май 04 2006, 15:08 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, май 03 2006, 12:21
Сообщения: 3
Экспорт/Импорт или присвоения до/после касаются только t_bkpf, t_bseg и t_bsec.
В нашем случае можно производить изменения через t_bkpfsub и t_bsegsub.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 05 2006, 12:09 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
В SAPMF05A, например, передается таблица bsegsubsttab, в ней из bseg сидят только текстовые поля типа sgtxt, xref. Думаю это не те поля ради которых можно что-то серьезное затевать. С ними можно разобраться и в замещениях.
В общем ясно. Обходи, если очень хочется.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 05 2006, 12:15 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Да, всем откликнувшимся большое спасибо!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Сб, май 06 2006, 14:28 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, май 03 2006, 12:21
Сообщения: 3
Нужные поля аппендить к словарным структурам bkpf_subst/bseg_subst по необходимости, в той же SAPMF05A далее в цикле прописано:
move-corresponding bkpfsubsttab to xbkpf.
move-corresponding bsegsubsttab to xbseg.
В итоге получим то что надо.


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

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


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

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


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

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