Комментарии по теме

«Ко­рре­кти­ро­вка таблиц базы данных с помощью ABAP»
Олег Точенюк:
Андрей а вам никто никогда не говорил, что обновлять таблицы базы данных SAP категорически запрещено, независимо от того чем обусловлены такие желания. Свои Z-таблицы, да сколько угодно, но......

База знаний

Вы можете подписаться на эту колонки этого автора, если авторизируетесь или зарегистрируетесь

Будущий программист SAP ABAP: с чего начать?

04 ноября 2013, 15:28

Данная статья написана Дмитрием Кагликом и впервые опубликована на сайте http://www.sapexpert.co.uk на английском языке. Если вы хотите узнавать больше от экспертов из мира SAP раньше других, то, пожалуйста, подпишитесь на обновления на указанном сайте.



ABAP – это язык программирования, разработанный SAP AG. «Классические» SAP-системы, такие как ECC, BW итп. написаны на ABAP. Это означает, что навыки программирования на SAP ABAP – одни из самых востребованных на рынке труда SAP.

Вы – начинающий программист SAP ABAP, или попросту АБАПер, который хочет развивать свою карьеру в этой области? В таком случае у Вас почти наверняка возникает вопрос

Какие основные направления, в которых нужно развиваться начинающему АБАПеру? Какие основные моменты нужно иметь в виду?

SAP Expert рекомендует Вам подумать над следующими моментами:

1. Функциональные знания. Даже если Вы – не функциональный и не технический консультант, Вам все равно будет полезно изучить хотя бы основные процессы различных модулей SAP. В таком случае Вам будет проще понимать требования технических и функциональных спецификаций, полученных от соответствующих консультантов.

2. Техника программирования на ABAP. ABAP – это весьма специфичный язык программирования. Некоторые его подходы отличаются от любого другого языка. В то же самое время, одну и ту же задачу можно решить на АБАПе несколькими путями. Вы должны понимать различия между ними и уметь применять правильный метод.

Давайте рассмотрим простой пример. Обработка записей в таблице может быть реализована на ABAP как минимум двумя различными путями:

a. SELECT FROM TABLE WHERE...

PROCESS RECORD.

ENDSELECT.

 

b. SELECT FROM TABLE INTO INTERNALTABLE WHERE...

ENDSELECT.

LOOP AT INTERNALTABLE

PROCESS RECORD.

ENDLOOP.

Какой их них подходит в каждой возможной ситуации? Вы должны знать ответ!

В этом же разделе хочется еще и упомянуть объектно-ориентированное программирование, методы и прочие «продвинутые» техники программирования. Книги, рекомендованные SAP Expert, могут Вам в этом помочь.

И напоследок, рекомендую еще одну статью, опубликованную SAP Expert на смежную тему.

3. Программирование не-ERP сисем. SAP ECC – это только один из продуктов компании SAP AG. Также существуют CRM, BW, SRM, MDM, PI, Portal и множество других. В них могут сущестсовать свои особенности программирования. Иногда они используют альтернативные ABAP языки программирования. Вы должны знать как минимум основы этих специфичных требований, чтобы быть готовым к будущим задачам.

У Вас есть дополнительные вопросы? Спрашивайте у SAP Expert!

Комментарии:

Олег Точенюк (Рейтинг: 10325) 15:50, 04 ноября 2013

Что-то вы меня озадачили вариантом:
 
b. SELECT FROM TABLE INTO INTERNALTABLE WHERE...
...
ENDSELECT.
 
К компилятор вам ничего не сказал на такое?
17:56, 11 ноября 2013

Иван Косенко (Рейтинг: 36)

может таблица с заголовком. Да и вообще давно не рекомендуется использовать такие штуки с ENDSELECT.
19:05, 11 ноября 2013

Олег Точенюк (Рейтинг: 10325)

Ну там написано INTO INTERNALTABLE, не хидерлайн, не рабочая область, вот поэтому и озадачило. Было бы что-то типа INTO WORKAREA, вопросов бы небыло.
14:56, 12 ноября 2013

Иван Косенко (Рейтинг: 36)

ну для таблиц синтаксис INTO TABLE - тут явно древняя конструкция для таблиц с заголовком
12:20, 13 ноября 2013

Олег Точенюк (Рейтинг: 10325)

INTO TABLE - просто даже не скомпилируется по причине синтаксической ошибки, причем не важно с хидером таблица или нет. SELECT / ENDSELECT не предполагает передачи результата в таблицу.

Олег Башкатов (Рейтинг: 7789) 14:54, 13 ноября 2013

So, a fresher in ABAP should look at messages from compiler and avoid using old constructions.

Роман Бекетов (Рейтинг: 26) 20:56, 11 февраля 2014

Кошмар вообще, как можно такое выкладывать на полном серьёзе...