Текущее время: Вс, июл 20 2025, 00:26

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Одна ссылка на структуру - несколько структур
СообщениеДобавлено: Пт, июл 07 2006, 13:20 
Начинающий
Начинающий

Зарегистрирован:
Вт, май 30 2006, 09:22
Сообщения: 24
Откуда: Краснодар
Добрый день)
Интересует такой вопрос: к одной переменной при определенном условии надо подвязать определенную структуру... Пробовал через field-symbol , не получается, скорее всего такое возможно, просто голова не доходит, как правильно это сделать) Если не затруднит, подскажите, пожалуйста. Ниже напишу как я пробовал (не работает). Поправьте, что не так)

Есть tab1 и tab2.

field-symbols: <STRUCT> type any.
if ....
assign tab1 to <STRUCT>.
else.
assign tab2 to <STRUCT>.
endif.
data: IT_REZ like <STRUCT> occurs 1 with header line.

Заранее благодарен.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 13:27 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, сен 21 2005, 10:01
Сообщения: 651
Откуда: СССР
Не понял вопроса :)
что ты вообще хочешь сделать?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 13:32 
Начинающий
Начинающий

Зарегистрирован:
Вт, май 30 2006, 09:22
Сообщения: 24
Откуда: Краснодар
Для чего - долго объяснять...)
Что именно... хочу чтобы переменная IT_REZ указывала либо на структуру tab1 либо на структуру tab2))) Примерно так.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 13:35 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, ноя 12 2004, 10:44
Сообщения: 370
Откуда: Москва
SAD написал(а):
Для чего - долго объяснять...)
Что именно... хочу чтобы переменная IT_REZ указывала либо на структуру tab1 либо на структуру tab2))) Примерно так.


поищи на форуме про динамические таблицы. не раз обсуждалось.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 13:38 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
SAD написал(а):
Для чего - долго объяснять...)
Что именно... хочу чтобы переменная IT_REZ указывала либо на структуру tab1 либо на структуру tab2))) Примерно так.


С терминологией лучше поаккуратней- что нужно: cоздать внутрннюю таблицу со строкой идного из нескольких типов или всё-таки "переменная IT_REZ указывала"?
Если первое, то
V4.7
Code:
create data IT_REZ like standard table of <STRUCT>.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 13:43 
Начинающий
Начинающий

Зарегистрирован:
Вс, июл 24 2005, 12:32
Сообщения: 12
Âîçìîæíî ñëåäóþùèé êîä áóäåò ïîëåçåí:

DATA it_fielcat TYPE lvc_t_fcat.
DATA ref_table TYPE REF TO data.
FIELD-SYMBOLS: <gt_table> TYPE table.
DATA: ls_fieldcat TYPE lvc_s_fcat.
* Ôîðìèðóåì fielcat ïîëåé òàáëèöû
ls_fieldcat-col_pos = 1.
ls_fieldcat-fieldname = 'FIELD_NAME'.
ls_fieldcat-inttype = 'C'.
ls_fieldcat-intlen = 1.
APPEND ls_fieldcat TO it_fielcat.
* Äèíàìè÷åñêè ñîçäàåì òàáëèöó íóæíîé ñòðóêòóðû
CALL METHOD cl_alv_table_create=>create_dynamic_table
EXPORTING
it_fieldcatalog = it_fielcat
IMPORTING
ep_table = ref_table.

ASSIGN ref_table->* TO <gt_table>.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 14:22 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, сен 21 2005, 10:01
Сообщения: 651
Откуда: СССР
Можно что-то типа такого:

FIELD-SYMBOLS <fs_table> TYPE table.
FIELD-SYMBOLS <fs_line> TYPE ANY.
FIELD-SYMBOLS <fs_item> TYPE ANY.

DATA i_bseg TYPE TABLE OF bseg.
DATA i_bkpf TYPE TABLE OF bkpf.

IF 1 < 2.
ASSIGN i_bkpf TO <fs_table>.
ELSE.
ASSIGN i_bseg TO <fs_table>.
ENDIF.

LOOP AT <fs_table> ASSIGNING <fs_line>.
*....
ENDLOOP.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, июл 07 2006, 16:01 
Директор
Директор
Аватара пользователя

Зарегистрирован:
Пн, дек 20 2004, 16:05
Сообщения: 1080
Откуда: 4.0B
Пол: Мужской
Если я правильно понял :

DATA: itab1 TYPE REF TO data,
t_bkpf like bkpf occurs 0 with header line,
t_bseg like bseg occurs 0 with header line.
field-symbols: <mark_tab> TYPE STANDARD TABLE.


t_bkpf = '50010000000000012006'. append t_bkpf.
t_bkpf = '50010000000000022006'. append t_bkpf.

t_bseg = '50010000000000012006001'. append t_bseg.
t_bseg = '50010000000000012006002'. append t_bseg.
t_bseg = '50010000000000022006001'. append t_bseg.
t_bseg = '50010000000000022006002'. append t_bseg.

PERFORM generate USING 'BKPF'
'T_BKPF[]'
CHANGING itab1.

ASSIGN itab1->* TO <mark_tab>.
unassign <mark_tab>.
PERFORM generate USING 'BSEG'
'T_BSEG[]'
CHANGING itab1.
ASSIGN itab1->* TO <mark_tab>.


*********
form generate using value(p_str_name)
value(p_full_table)
CHANGING ref.

FIELD-SYMBOLS: <f_full_tab> TYPE STANDARD TABLE,
<mark_tab> TYPE STANDARD TABLE,
<fs> TYPE ANY,
<wa> TYPE ANY.

data: wa_ref TYPE REF TO data.

CREATE DATA ref TYPE STANDARD TABLE OF (p_str_name).
ASSIGN ref->* TO <mark_tab>.

ASSIGN (p_full_table) TO <f_full_tab>.

create data wa_ref type (p_str_name).
assign wa_ref->* to <wa>.

loop at <f_full_tab> ASSIGNING <fs> .
ASSIGN <fs> TO <wa> casting type (p_str_name).
append <wa> to <mark_tab>.
endloop.


endform. " generate
*********


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

Зарегистрирован:
Вт, май 30 2006, 09:22
Сообщения: 24
Откуда: Краснодар
Всем огромное спасибо за помощь. :)


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

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


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

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


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

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