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

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: OpenFI 00001040 не отрабатывает
СообщениеДобавлено: Пт, июл 24 2009, 09:57 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 06 2005, 17:52
Сообщения: 559
Подключил фм к данному событию...

В отладке табличка FMTAB выглядит так:
1 J_1UF_MR_INTERFACE_00001040
2 Z_FI_INTERFACE_00001040

При этот loop идет только по первой строке FMTAB, на вторую строку система просто не заходит. Если в отладке поменять ФМы местами, выполняются обе строки оО
Настораживает в первом ФМ J_1UF_MR_INTERFACE_00001040 вот такой код:

Code:
assign ('(SAPLBFFM)fmtab[]') to <fmtab>.
  if sy-subrc = 0.
    lt_fmtab[] = <fmtab>.
  endif.
.....
  if <fmtab> is assigned.
    <fmtab> = lt_fmtab[].
  endif.


Но в промежутке с lt_fmtab[] вроде ничего не делают. Чувствую, что истина где-то рядом, но мозг уже просто кипит :)

Пономарев Артем: пользуйтесь тэгами для оформления кода, пожалуйста.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenFI 00001040 не отрабатывает
СообщениеДобавлено: Пт, июл 24 2009, 10:38 
Председатель
Председатель

Зарегистрирован:
Чт, май 10 2007, 09:15
Сообщения: 1558
а assign ('(SAPLBFFM)fmtab[]') to <fmtab>. отрабатывает без ошибки.
Видимо не может прочитать область из памяти... либо программа предыдущая не загружена, либо вызов происходит по другому - не как обычно...
Данный ФМ еще где-то вызывается?
в твоем варианте программа SAPLBFFM запущена?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: OpenFI 00001040 не отрабатывает
СообщениеДобавлено: Пт, июл 24 2009, 10:51 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 06 2005, 17:52
Сообщения: 559
Assign отрабатывает без ошибки.

Схема работы такая:

Code:
loop at fmtab.

call function J_1UF_MR_INTERFACE_00001040.
  внутри него:

  assign ('(SAPLBFFM)fmtab[]') to <fmtab>.
  if sy-subrc = 0.
  lt_fmtab[] = <fmtab>.
  endif.
  .....
  if <fmtab> is assigned.
  <fmtab> = lt_fmtab[].
  endif.

endloop.


Все. ФМ на первой строке берет таблицу и переприсваивает ее через assign. После этого система на вторую строку этой же таблицы не заходит. Я не могу понять одну простую вешь - как банальное переприсваивание таблицы через assign может повлиять на цикл? Да, по сути это изменение таблицы внутри цикла по ней, но это просто ее переприсваивание.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenFI 00001040 не отрабатывает
СообщениеДобавлено: Пт, июл 24 2009, 11:05 
Председатель
Председатель

Зарегистрирован:
Чт, май 10 2007, 09:15
Сообщения: 1558
Переприсваивание цикла ? :)
так же нельзя :) поэтому и не попадает дальше...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: OpenFI 00001040 не отрабатывает
СообщениеДобавлено: Пт, июл 24 2009, 11:25 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Вам, видимо ноты стоит поискать.
Этот assign, если не ошибаюсь, в ноте 779953 присутствует.
по модулю достаточно исправлений

_________________
Я слышу и забываю,
Я вижу и помню долго,
Я делаю и — понимаю.


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

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


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

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


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

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