Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.29;
Скачать: CL | DM;

Вниз

Есть здесь абаперы?   Найти похожие ветки 

 
Pohil ©   (2007-06-27 07:45) [0]

Решил недавно начать учить ABAP, был просто в шоке. Помесь бегемота с носорогом млин, такого сумашедшего синтаксиса нигде еще не видел. Может кто нить занимался его изучением?


 
TUser ©   (2007-06-27 08:06) [1]

Пример покажи.


 
db2admin ©   (2007-06-27 08:16) [2]

http://forum.vingrad.ru/forum/topic-42874.html
вот пример и обьяснение

SAP на сколько я знаю всегда отличался не проходимыми интерфейсами, как пользователя, так и программера.

у IBM такие же приколы


 
TUser ©   (2007-06-27 08:31) [3]

У меня с перлом тоже какие-то бяки были с пробелами. Только он не сообщает об ошибке, он просто работает, как ему вздумается, а не как надо.


 
Pohil ©   (2007-06-27 08:47) [4]

Ну вот к примеру:

tables: t001w.

DATA: lc_werks      LIKE t001w-werks,
     ltab_fields LIKE help_value OCCURS 0 with header line,

     BEGIN OF ltab_values OCCURS 0,
       feld(40) TYPE c,
     END OF ltab_values.

*-- Set up fields to retrieve data
 ltab_fields-tabname    = "T001W".
 ltab_fields-fieldname  = "WERKS".
 ltab_fields-selectflag = "X".
 APPEND ltab_fields.

 ltab_fields-tabname    = "T001W".
 ltab_fields-fieldname  = "NAME1".
 ltab_fields-selectflag = space.
 APPEND ltab_fields.

*-- Fill values
 select * from t001w.
   ltab_values-feld = t001w-werks.
   append ltab_values.
   ltab_values-feld = t001w-name1.
   append ltab_values.
 endselect.

CALL FUNCTION "HELP_VALUES_GET_WITH_TABLE"
    EXPORTING
         fieldname                 = "WERKS"
         tabname                   = "T001W"
         title_in_values_list      = "Select a value"
    IMPORTING
         select_value              = lc_werks
    TABLES
         fields                    = ltab_fields
         valuetab                  = ltab_values
    EXCEPTIONS
         field_not_in_ddic         = 01
         more_then_one_selectfield = 02
         no_selectfield            = 03


Ну разве не стебательство над мозгом?


 
Ega23 ©   (2007-06-27 08:50) [5]


> Pohil ©   (27.06.07 08:47) [4]
>
> Ну разве не стебательство над мозгом?


Не вижу больших отличий от того же SQL, к примеру.


 
Котик Б   (2007-06-27 09:12) [6]


> Pohil ©   (27.06.07 07:45)  
> Решил недавно начать учить ABAP


... и чем же было вызвано столь глубокомысленное решение ? Неужели в Екатеринбурге на каждом углу SAP R/3 стоит ?


 
db2admin ©   (2007-06-27 09:25) [7]

Котик Б   (27.06.07 09:12) [6]
SAP R/3 для мобильников ))


 
Ega23 ©   (2007-06-27 09:26) [8]


> Неужели в Екатеринбурге на каждом углу SAP R/3 стоит ?


SAP много где стоит.


 
euru ©   (2007-06-27 10:17) [9]


> Pohil ©   (27.06.07 08:47) [4]

> Ну разве не стебательство над мозгом?
Где именно?


 
Val ©   (2007-06-27 10:34) [10]

автор, напиши, что это изумительный код, и 10 человек начнут доказывать тебе обратное. иначе и форумов бы не было.


 
tesseract ©   (2007-06-27 10:34) [11]


> Не вижу больших отличий от того же SQL, к примеру.


Больше похоже на хранимки в iBase,  или фильтры в dbf :-)

Наверно там нет такого уровня изоляции от базы как в 1с.


 
Pohil ©   (2007-06-27 11:09) [12]

> Val ©   (27.06.07 10:34) [10]
Улыбнуло:)

> euru ©   (27.06.07 10:17) [9]
Ну, сложность - понятие для субъективное кто-то спокойно прочитает что-нибудь типа:
inline(
 $8A/$4E/$04/      
 $66/$8B/$46/$06/  
 $66/$D3/$C0/        
 $66/$89/$46/$FC    
 );


Лично мне кажется синтаксис Abap просто ужасным. Хотя дело привычки.


 
tesseract ©   (2007-06-27 11:10) [13]


> Лично мне кажется синтаксис Abap просто ужасным. Хотя дело
> привычки.


пример из 1с :


рег=СоздатьОбъект("Регистры");
ПартииНаличие=Рег.ОстаткиТМЦ;
ТзЗапроса.УдалитьСтроки();
ТекНомен=СоздатьОбъект("СписокЗначений");

ПартииНаличие.УстановитьЗначениеФильтра("Фирма",фирма,1);
ПартииНаличие.УстановитьЗначениеФильтра("Склад",склад.ТекущийЭлемент(),1);
ПартииНаличие.УстановитьЗначениеФильтра("Номенклатура", СписВозврата, 2);          
ПартииНаличие.ВременныйРасчет();
Рег.РассчитатьРегистрыПо(ДатаВозв);

Запрос=СоздатьОбъект("ТаблицаЗначений");
ПартииНаличие.ВыгрузитьИтоги(Запрос,1,1);

//ТзЛев=СоздатьОбъект("ТаблицаЗначений");
//ТзЛев.НоваяКолонка("Код");
//ТзЛев.НоваяКолонка("Количество");
Запрос.Свернуть("Номенклатура,ЦенаПрод","Количество");



 
Pohil ©   (2007-06-27 11:20) [14]


> tesseract ©   (27.06.07 11:10) [13]

Про 1с я вообще молчу. Просто чудо. Я, конечно, в какой то степени патриот, но считаю что язык программирования должен быть вражеским:)


 
Игорь Шевченко ©   (2007-06-27 11:37) [15]

tesseract ©   (27.06.07 11:10) [13]

И что тут непонятно ?


 
tesseract ©   (2007-06-27 11:38) [16]


> И что тут непонятно ?


Да всё понятно, я просто для сравнения с ABAP выложил.


 
euru ©   (2007-06-27 11:47) [17]


> Pohil ©   (27.06.07 11:09) [12]
> Лично мне кажется синтаксис Abap просто ужасным. Хотя дело
> привычки.
Что же в нём ужасного? Синтксис ABAP ближе к английскому языку, чем синтаксис того же Паскаля. В http://delphimaster.net/view/15-1180857262/ я об этом уже говорил (см. посты 245-271).


> Про 1с я вообще молчу. Просто чудо. Я, конечно, в какой
> то степени патриот, но считаю что язык программирования
> должен быть вражеским:)
Т.е. если бы тексты в 1С были на немецком или корейском языках, то было бы нормально?


 
Anatoly Podgoretsky ©   (2007-06-27 11:59) [18]

> euru  (27.06.2007 11:47:17)  [17]

> Т.е. если бы тексты в 1С были на немецком или корейском языках, то было бы нормально?

Т.е. если бы тексты в 1С были на английском языке, то было бы нормально?
Как же надо не любить родной язык.


 
homm ©   (2007-06-27 12:01) [19]

> Как же надо не любить родной язык.

Любовь то здесь при чем? Дело в привычке.


 
Pohil ©   (2007-06-27 12:04) [20]


> Anatoly Podgoretsky ©   (27.06.07 11:59) [18]

Ну посмотри,

Запрос=СоздатьОбъект("ТаблицаЗначений");
и
Req = CreateObject("Table");

Тебе какой вариант больше нравится?


 
Pohil ©   (2007-06-27 12:05) [21]

Я не говорю что не понятно, просто 1 лично мне режет глаз


 
homm ©   (2007-06-27 12:07) [22]

> Ну посмотри,
>
> Запрос=СоздатьОбъект("ТаблицаЗначений");
> и
> Req = CreateObject("Table");
> Тебе какой вариант больше нравится?


какте-то строки не эквивалентные.

Запрос = СоздатьОбъект("ТаблицаЗначений");

Requere = CreateObject("TableOfFields");


 
Игорь Шевченко ©   (2007-06-27 12:12) [23]


> Запрос=СоздатьОбъект("ТаблицаЗначений");
> и
> Req = CreateObject("Table");
>
> Тебе какой вариант больше нравится?


Мне без разницы. А тем, кто трындит, что help на английском поэтому надо клянчить на форуме, определенно первый вариант должен быть понятней.


 
Anatoly Podgoretsky ©   (2007-06-27 12:16) [24]

> Pohil  (27.06.2007 12:04:20)  [20]

Первый, но мне нет разницы какой использовать, а вот другим разница есть.
Кроме того первый писал более квалифицированый разработчик.


 
euru ©   (2007-06-27 12:17) [25]


> Anatoly Podgoretsky ©   (27.06.07 11:59) [18]

> Т.е. если бы тексты в 1С были на английском языке, то было
> бы нормально?
Вы меня спрашиваете? Вроде бы не я утверждал, что русскоязычный варинт 1С меня коробит.


> Pohil ©   (27.06.07 12:04) [20]

> Тебе какой вариант больше нравится?
Без разницы. Но человеку (в нашей стране), не владеющему английским языком хоть в какой-то степени, русский вариант будет более понятен.


 
Pohil ©   (2007-06-27 12:17) [26]


> какте-то строки не эквивалентные.
>
> Запрос = СоздатьОбъект("ТаблицаЗначений");
>
> Requere = CreateObject("TableOfFields");


Ну тогда уж не TableOfFields а TableOfValues ;)


> Мне без разницы. А тем, кто трындит, что help на английском
> поэтому надо клянчить на форуме, определенно первый вариант
> должен быть понятней.

Ну если бы никто не трындел, тебе бы скучно было:)


 
Anatoly Podgoretsky ©   (2007-06-27 12:18) [27]

> homm  (27.06.2007 12:07:22)  [22]

Если первый разработчик был не вполне квалифицированый, то твой вариант намного хуже, поскольку ложные сущности
ТаблицаЗначений <> ТаблицаПолей - это явная диверсия


 
homm ©   (2007-06-27 12:23) [28]

> Если первый разработчик был не вполне квалифицированый,
> то твой вариант намного хуже, поскольку ложные сущности
> ТаблицаЗначений <> ТаблицаПолей - это явная диверсия

Да мне просто показалочь, что там еше намек был что по английски короче будет. чем по русски, вот я и решил показать, что это не так, не вдаваясь в подробности ;)


 
Pohil ©   (2007-06-27 12:27) [29]


> Да мне просто показалочь, что там еше намек был что по английски
> короче будет. чем по русски, вот я и решил показать, что
> это не так, не вдаваясь в подробности ;)

Тебе показалось:) я не намекал, что короче


 
euru ©   (2007-06-27 12:35) [30]

Кстати, не отходя от темы.

В Абапе, чтобы считать данные из таблицы, не нужно создавать никаких дополнительных объектов запроса, как в 1С и Паскале. Они выбираются обычным селектом и записываются во внутреннюю таблицу.


 
Val ©   (2007-06-27 12:39) [31]


> В Абапе, чтобы считать данные из таблицы, не нужно создавать
> никаких дополнительных объектов запроса, как в 1С и Паскале.

здраствуй фокс?


 
euru ©   (2007-06-27 12:43) [32]


> Val ©   (27.06.07 12:39) [31]

> здраствуй фокс?
Почему сразу фокс, а не, например, mssql?


 
Val ©   (2007-06-27 13:19) [33]

не напрягайтесь, плохого в моей фразе нет.
пототому что в фоксе я пишу и запросы и рисую пользовательский интерфейс в мс скл - тоже так?


 
Pohil ©   (2007-06-27 13:30) [34]

Кстати может кто-нибудь знает какие нить форумы хорошие по ABAP? Киньте ссылки плз.


 
euru ©   (2007-06-27 14:16) [35]


> Pohil ©   (27.06.07 13:30) [34]

> Кстати может кто-нибудь знает какие нить форумы хорошие
> по ABAP? Киньте ссылки плз.
www.sapforum.ru
sdn.sap.com


 
Rouse_ ©   (2007-06-27 14:39) [36]


> inline(
>  $8A/$4E/$04/      
>  $66/$8B/$46/$06/  
>  $66/$D3/$C0/        
>  $66/$89/$46/$FC    
>  );

имха
mov cl,[esi+$04]
mov ax,[esi+$06]
rol ax,cl
mov [esi-$04],ax

А вообще то что пунктуационные ограничения языка вплоть что a=3 не правильно а правильно a = 3 это есть хорошо. Приучает к аккуратности :)


 
Pohil ©   (2007-06-27 14:58) [37]


> Rouse_ ©   (27.06.07 14:39) [36]


:) Интеловский мануал наизусть помнишь?


 
db2admin ©   (2007-06-27 15:05) [38]

мне вот интересно постоянные изобретения своих особенностей, которые усложняют работу с прогами(платформами) под тип SAP, это мировой заговор или просто желание зделать "че нить свае"? Даже если после использования этих продуктов, которые презрели все сложившиеся стереотипы крышу сносит.


 
euru ©   (2007-06-27 15:29) [39]


> db2admin ©   (27.06.07 15:05) [38]

> постоянные изобретения своих особенностей
Это не изобретение нового. Это развитие старого. Как Дельфи - потомок Паскаля, так и Абап - потомок Кобола.


> усложняют работу с прогами(платформами)
Абап не усложняет, а наоборот упрощает работу в среде SAP R/3.


 
Rouse_ ©   (2007-06-27 15:51) [40]


> Интеловский мануал наизусть помнишь?

Зачем наизусть? :) Токма основные инструкции :)



Страницы: 1 2 вся ветка

Текущий архив: 2007.07.29;
Скачать: CL | DM;

Наверх




Память: 0.57 MB
Время: 0.02 c
2-1183060032
просто_ник
2007-06-28 23:47
2007.07.29
Нужна помощь


15-1182954688
Andy BitOff
2007-06-27 18:31
2007.07.29
Третья версия лицензии GPL будет выпущена на этой неделе


15-1181825046
BaryVetaL
2007-06-14 16:44
2007.07.29
Лицензирование своего программного продукта


2-1183357909
OH
2007-07-02 10:31
2007.07.29
Прозрачность формы


2-1183556130
gentos
2007-07-04 17:35
2007.07.29
Treeview