Текущее время: Чт, июл 17 2025, 06:06

Часовой пояс: 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 часа


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

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


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

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