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

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


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

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


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

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