Текущее время: Пт, июл 18 2025, 22:54

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: INCLUDE vs. function module?
СообщениеДобавлено: Вт, сен 12 2006, 18:08 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
Мы сейчас работаем над несколькими однотипными интерфейсиками. Система очень простая: программа собирает какие-то данные, записывает их в файл и отсылает его по FTP. Для предыдущего проекта заезжий гуру сделал нам INCLUDE с несколькими routines. Но сейчас я смотрю на программы, которые их используют и там 80% остального кода тоже повторяется (например, обработка ошибок после PERFORM).

Вот сижу и думаю, а почему бы не сделать простой function module, которому можно было бы скормить internal table с парой параметров и он уже сделает все остальное. Главным преимуществом мне видится то, что явно вызывается кусок "чужеродного" кода с явными EXCEPTIONS. Но гложут сомнения: есть ли какие-то преимущества в использовании INCLUDE, а не FUNCTION MODULE? Может что-то работает быстрее или есть какая-то линия партии насчет того, что и когда должно использоваться?


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

Зарегистрирован:
Пт, июн 16 2006, 00:43
Сообщения: 1686
Откуда: Москва <-> Красноярск
Пол: Мужской
На мой скромный взгляд:
1. Инклуды предназначены для структурирования кода в рамках одной программы.
2. Функциональные модули - для вынесения общей для нескольких разработок атомарной функциональности.

З.Ы.: Лично меня раздражает, когда пытаясь поставить бряк в инклуде я получаю список из черт-знает-скольки репортов...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: INCLUDE vs. function module?
СообщениеДобавлено: Вт, сен 12 2006, 22:18 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, мар 02 2005, 20:19
Сообщения: 133
Откуда: Moscow
Jelena написала:
Мы сейчас работаем над несколькими однотипными интерфейсиками. Система очень простая: программа собирает какие-то данные, записывает их в файл и отсылает его по FTP. Для предыдущего проекта заезжий гуру сделал нам INCLUDE с несколькими routines. Но сейчас я смотрю на программы, которые их используют и там 80% остального кода тоже повторяется (например, обработка ошибок после PERFORM).

Вот сижу и думаю, а почему бы не сделать простой function module, которому можно было бы скормить internal table с парой параметров и он уже сделает все остальное. Главным преимуществом мне видится то, что явно вызывается кусок "чужеродного" кода с явными EXCEPTIONS. Но гложут сомнения: есть ли какие-то преимущества в использовании INCLUDE, а не FUNCTION MODULE? Может что-то работает быстрее или есть какая-то линия партии насчет того, что и когда должно использоваться?


Конечно, стоит вынести однотипные фрагменты в ФМ. Абсолютно нормальная практика. Общие INCLUDES больше подходят для описания данных в них.
Насчет быстродейтсвия - есть такой момент, что при первом вызове ФМ в памяти инициализируется вся его ГруппаФункций, и если она очень большая, то ...
Но в клиенстких разработках очень больших ГФ обычно не бывает. Так что стоит оформить набор ФМ.
Видимо гуру на моент разработки еще не предполагал, что в будущем популярность его routines так возрастет :wink:


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, сен 15 2006, 18:02 
Президент
Президент

Зарегистрирован:
Пт, апр 28 2006, 22:39
Сообщения: 2514
Откуда: North Taxolina, USA
Пол: Женский
Спасибо всем за ответы. Спихнула все в function module - работает отлично. 8)


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

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


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

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


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

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