Текущее время: Вс, июн 29 2025, 23:17

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 10:54 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, мар 13 2007, 22:57
Сообщения: 71
Нужно считать данные из другой системы во внутренние таблицы sap. Есть функция, которая по динамические определенным запросам считывает нужные данные и кладет их в таблицу соответствующей структуры, нельзя ли как-нибудь определить таблицу для INTAB_DB, чтобы не вызывать последовательно

Code:
CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  GT_t1
      T_MSG      = L_T_MSG.


CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  GT_t2
      T_MSG      = L_T_MSG.

для каждой таблицы отдельно. где таблицы GT_t1 и GT_t2 имеют различные структуры.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 11:30 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Если правильно понял, то все просто, в ФМ-е на вкладке таблицы, объявляете таблицу не типизируя ее и все. Потом можно передавать таблицу любой структуры. Например, ФМ POPUP_WITH_TABLE_DISPLAY.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 13:12 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, мар 13 2007, 22:57
Сообщения: 71
Besa написал:
Если правильно понял, то все просто, в ФМ-е на вкладке таблицы, объявляете таблицу не типизируя ее и все. Потом можно передавать таблицу любой структуры. Например, ФМ POPUP_WITH_TABLE_DISPLAY.


не совсем так поняли. сейчас так и есть как Вы описали. объявлена таблиц как и Вы сказали выше, и передаются таблицы любой структуры типа 5 однообразных блоков. а мне бы хотелось передавать в цикле, ну т.е.

Code:


loop at itab.

CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-name_tab
      T_MSG      = L_T_MSG.

endloop.


т.е. это конечно неверно написано:
Code:
   INTAB_DB   =  itab-name_tab

но, смысл, я думаю, теперь понятен


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 13:19 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Воспользуйтесь FIELD-SYMBOLS с типом TABLE, в таблице храните поле типа REF TO DATA.

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Чт, авг 19 2010, 14:05 
Менеджер
Менеджер

Зарегистрирован:
Чт, янв 20 2005, 08:34
Сообщения: 573
Пол: Мужской
birds написал(а):
не совсем так поняли. сейчас так и есть как Вы описали. объявлена таблиц как и Вы сказали выше, и передаются таблицы любой структуры типа 5 однообразных блоков. а мне бы хотелось передавать в цикле, ну т.е.

Code:


loop at itab.

CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-name_tab
      T_MSG      = L_T_MSG.

endloop.


т.е. это конечно неверно написано:
Code:
   INTAB_DB   =  itab-name_tab

но, смысл, я думаю, теперь понятен


:D и что сейчас мешает сделать так (в цикле), если INTAB_DB объясвлена как ANY TABLE?

Code:
loop at itab.
CALL FUNCTION 'ZDB'
    EXPORTING
      SQL        = itab-P_SQL
       FC         = LT_FIELDCAT
     TABLES
      INTAB_DB   =  itab-TAB
      T_MSG      = L_T_MSG.

endloop.

_________________
Волю в кулак, мышцы в узду, работай себе и не ахай!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: передача таблиц с разной структурой в CALL FUNCTION
СообщениеДобавлено: Сб, авг 21 2010, 09:07 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Code:
data: begin of itab occurs 0,
      name_tab(20),
      end of itab.
itab-name_tab = 't1'.
append itab.
itab-name_tab = 't2'.
append itab.

data: t1 like eban occurs 0.
data: t2 like mseg occurs 0.
select * from eban into table t1 up to 10 rows.
select * from mseg into table t2 up to 10 rows.

field-symbols: <f1> type standard table.

loop at itab.
  assign (itab-name_tab) to <f1>.
  call function 'POPUP_WITH_TABLE_DISPLAY_OK'
    exporting
      endpos_col   = 1
      endpos_row   = 1
      startpos_col = 10
      startpos_row = 10
      titletext    = '111'
    tables
      valuetab     = <f1>.
endloop.


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

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


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

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


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

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