Текущее время: Ср, июл 30 2025, 23:20

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 17:57 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
Создал класс. ( :lol: звучит однако)

Работает. Вижу его в ветке Классы и вызываю из экранов.

Пытаюсь объявить и вызвать из функции. а его не видно.

имеется в виду RFC функции


почему?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 19:54 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Hermitap написал(а):
Создал класс. ( :lol: звучит однако)

Работает. Вижу его в ветке Классы и вызываю из экранов.

Пытаюсь объявить и вызвать из функции. а его не видно.

имеется в виду RFC функции


почему?


Создали локально или в репозитарии?

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 20:06 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
sy-uname написал(а):
Hermitap написал(а):
Создал класс. ( :lol: звучит однако)

Работает. Вижу его в ветке Классы и вызываю из экранов.

Пытаюсь объявить и вызвать из функции. а его не видно.

имеется в виду RFC функции


почему?


Создали локально или в репозитарии?


в Программах создал инклуд и там сделал класс.
я его вижу и вызываю во всех экранах PBO или PAI
перехожу в функциональные модули. И там в функциях не вижу.

что значит в репозитарии? это где? может этот термин у меня по другому звучит?

Честно говоря с классами только начал разбираться.. поясните плиз поподробней. где и что.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 20:22 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Hermitap написал(а):
в Программах создал инклуд и там сделал класс.
я его вижу и вызываю во всех экранах PBO или PAI
перехожу в функциональные модули. И там в функциях не вижу.

Инклюд включён в ту-же группу функций? Если в туже - то он должен быть в топе, т.е. вначале инклюд с описанием класса, потом функциональные модули и затем всё остальное. Вроде так.

Цитата:
что значит в репозитарии? это где? может этот термин у меня по другому звучит?


Репозитарий, словарь - SE80 - друние объекты - тас среди закладок есть закладка для работы с классами/интерфейсами описываемые в словаре.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 20:38 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
Цитата:
Репозитарий, словарь - SE80 - друние объекты - тас среди закладок есть закладка для работы с классами/интерфейсами описываемые в словаре.


да в репозитарии видно.. как я и сказал выше, в программах в папке классы раскрывающемся дереве... он прекрасно виден и там я вижу все методы атрибуты и. т. д.
как бы все в порядке. но функции его невидят :twisted:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 20:59 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Hermitap написал(а):
в Программах создал инклуд и там сделал класс.
я его вижу и вызываю во всех экранах PBO или PAI
перехожу в функциональные модули. И там в функциях не вижу.
Так что же вы создали в инклюде?
Если в дереве у вас класс расскрывается, то значит в инклюде вы создаёте объект(инстанцию) класса через create object ? А где этот объект описан?

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 21:04 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Hermitap написал(а):
да в репозитарии видно.. как я и сказал выше, в программах в папке классы раскрывающемся дереве... он прекрасно виден и там я вижу все методы атрибуты и. т. д.


Зададим вопрос по другому ;-)
В se24 вы его видите?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 21:08 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
sy-uname написал(а):
Hermitap написал(а):
в Программах создал инклуд и там сделал класс.
я его вижу и вызываю во всех экранах PBO или PAI
перехожу в функциональные модули. И там в функциях не вижу.
Так что же вы создали в инклюде?
Если в дереве у вас класс расскрывается, то значит в инклюде вы создаёте объект(инстанцию) класса через create object ? А где этот объект описан?


так. по порядку.

Я зашел в программы.
Создал свой инклуд в котором описал свой класс. методы и атрибуты.
Он появился в Папке классы. и там весь раскрывается и я его прекрасно вижу.
Создавал ручками. в обычном инклуде. не в папке классы. (может поэтому он где то не прописался)


ПРотом захожу в любой экран в PAI или PBO
пишу.
Code:
DATA:  iClass TYPE REF TO MYCLASS.
CREATE OBJECT  iClass
....


все работает. в любом экране.

перехожу в функциональные модули
захожу в первую же функцию(RFC) пишу тот же код и получаю ошибку
объект MYCLASS неизвестен....

подозреваю что функция о нем не знает потому как где то не прописан.

пытался прописать .INCLUDE файл где класс.. непомогает.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 21:09 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
vga написал(а):
Hermitap написал(а):
да в репозитарии видно.. как я и сказал выше, в программах в папке классы раскрывающемся дереве... он прекрасно виден и там я вижу все методы атрибуты и. т. д.


Зададим вопрос по другому ;-)
В se24 вы его видите?


это я уже завтра гляну. сейчас я уже дома а дома SAPA нету :roll:


или Вы хотите сказать что класс нужно создавать в SE24?
а там, я читал, глобальные классы, а мне мне нужен класс только в рамках моей программы ( пакета )

p.s. как я скучаю по С# :cry:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: не вижу класс из функции.
СообщениеДобавлено: Вт, июл 10 2007, 21:47 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Hermitap написал(а):
или Вы хотите сказать что класс нужно создавать в SE24?
а там, я читал, глобальные классы, а мне мне нужен класс только в рамках моей программы ( пакета )

p.s. как я скучаю по С# :cry:


Чтобы класс был виден из любого места программы, он должен быть или глобальным, или же, как писали выше, INCLUDE с описанием класса должна находиться выше include с описанием функционального модуля в главной программе функциональной группы.
Если функциональная группа называется Zxxx, то главная программа SAPLZxxx.
Щелкаете на Функ. группе, далее кнопка "Main Program".

Не знаю, как в С#, а в других языках порядок INCLUDE тоже важен.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 08:59 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
Пишу так
пытаюсь ручками вписать inclede

Code:
.INCLUDE ZPG_CLASS.
DATA: PaperParam TYPE REF TO GET_material_param.


Получаю ошибку

incorect nesting: before the statement "CLASS", the structure
introduced by "FUNCTION" must be concluded by "ENDFUNCTION"....

Кликаю на ошибку и попадаю в свой класс.

что я там не дописал?


что значит эта эта ошибка? что то я не понял.

и еще.. как в se24 перейти от визуального построителя к коду. всему коду класса?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 09:40 
Председатель
Председатель
Аватара пользователя

Зарегистрирован:
Чт, апр 13 2006, 12:32
Сообщения: 1503
Откуда: Питер
Попробуйте вставить ваш include в Main Program.
Щелкаете на Функ. группе, далее кнопка "Main Program".


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 09:42 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
Hermitap написал(а):
Пишу так
пытаюсь ручками вписать inclede

Code:
.INCLUDE ZPG_CLASS.
DATA: PaperParam TYPE REF TO GET_material_param.


Получаю ошибку

incorect nesting: before the statement "CLASS", the structure
introduced by "FUNCTION" must be concluded by "ENDFUNCTION"....

Кликаю на ошибку и попадаю в свой класс.

что я там не дописал?
Вы нетуда написали. include надо писать в "Меню 'Перейти к' - 'Глобальные данные'".
Цитата:

что значит эта эта ошибка? что то я не понял.


В ABAP-OO нельзя определять классы внутри ФМ или подпрограмм.
Цитата:
и еще.. как в se24 перейти от визуального построителя к коду. всему коду класса?
Никак.

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


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, июл 11 2007, 09:46 
Младший специалист
Младший специалист

Зарегистрирован:
Ср, авг 02 2006, 15:26
Сообщения: 97
СПАСИБО vga и sy-uname, заработало

Цитата:
Вы нетуда написали. include надо писать в "Меню 'Перейти к' - 'Глобальные данные'".


после этого все завелось.


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

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


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

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


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

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