Posted: Fri Feb 06, 2009 4:44 pm Post subject: разница между user exits и enchansment
День добрый всем. Не подскажите собственно, в чём различие между ними? документацию читал, ссылки по теме тоже, но всё-таки не уловил реальной разницы. Спасибо
Тут во многом вопрос терминологии. Насколько я знаю, однозначного разграничения нет. Я могу попробовать объяснить самую распространенную идею.
Есть основные 3 типа того, что чаще всего называют user-exit.
1) В модуле SD - специальная формы в специальном инклуде. Например MV45AFZZ->FORM USEREXIT_MOVE_FIELD_TO_VBAK
2) Функциональный модуль с Z-инклудом внутри. Например EXIT_SAPLCOIH_018. Как правило такой модуль входит в enhancement (транзакция SMOD) и там уже называется function-exit. Так же в enhancement наряду с function-exit могут входить screen-exit, table-exit итд.
По правилам такие модули должны называться customer-exit так как, в отличие от пункта 1, не требуют изменений стандартных объектов этим в корне от них отличаются, но в 95% случаев программисты не вдаются в такие подробности
3) В модуле FI - отдельно генерируемые формы, поддающиеся уже совсем другой логике и концепции создания.
Чаще всего под связкой enhancement->user-exit понимают именно enhancement из транзакции SMOD и function-exit, входящий в его состав. Вызывается, кстати такой модуль SAPом при помощи выражения CALL CUSTOMER-FUCNTION, что понятности во все многообразие не вносит.
В новых версиях SAPа есть еще Enhancement Spot - специально отведенные места в стандартном коде, в которых можно делать изменения без заприса SSCR ключа. Но это уже совсем другая история.
Age: 48 Joined: 12 Jan 2009 Posts: 17 Location: Хабаровск
Posted: Mon Feb 09, 2009 5:45 pm Post subject:
Мне так кажется что под enchansment понимается новая технология расширения программ которая появилась в базисе 7.0 (ECC 6.0) суть технологии что во многих специально обозначенных местах программ enchansment-point... можно вставить свой код, кроме того таким же образом можно добавить код в начале и конце функционального модуля, подпрограммы и инклюда (это касается только компонентов приложений, для базисных компонентов эти штуки не работают)
(почемуто SAPовцы не сделали этого же для модулей и эранной логики, а зря)
Основное преимущество перед обычными User-exit в том что в enchansment программист имеет доступ ко всем переменным программы в которой он встраивается (в пределах их видимости конечно), а в User-exit мы имеем дело с специальным ФМ с соотв. входными и выходными параметрами которых за частую не хватает и приходится всячески извращаться.
Если я правильно помню, то user exits относятся к модификациями и таким образом в большую группу улучшений (enhancements) не попадают.
При этом user exits - только SD-шные FORMS в специальном инклуде.
В свою очередь, как ФМ в Z-инклюде (они относятся к т.н. Customer Exits), так и специальные FI-ные модули (BTE или Open FI) являются примерами Enhancements.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.