Текущее время: Вс, июн 22 2025, 19:29

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июн 07 2012, 14:45 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, окт 05 2010, 19:56
Сообщения: 52
Коллеги, доброго времени суток!

Возник вопрос,
можно ли средствами ABAP получить исходный код другой программы(чтобы затем его сохранить на компьютере,например, как текст)
или каким-то образом сохранить код на компьютере?

Заранее спасибо!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июн 07 2012, 15:05 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Чт, ноя 11 2004, 16:25
Сообщения: 3109
Пол: Мужской
Sergey_N написал(а):
Коллеги, доброго времени суток!

Возник вопрос,
можно ли средствами ABAP получить исходный код другой программы(чтобы затем его сохранить на компьютере,например, как текст)
или каким-то образом сохранить код на компьютере?

Заранее спасибо!

Конкретно по вопросу, да, можно, f1 по READ REPORT. Можно читать кластер VRSX2.
(только скрытые коды не покажет)

Только зачем это Вам нужно? Если интересует как носить проги с собой то http://www.sapboard.ru/forum/viewtopic.php?f=13&t=72326


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июн 07 2012, 18:25 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июл 16 2010, 09:57
Сообщения: 106
Откуда: СПб
Пол: Мужской
Я иногда "бэкаплю" свои разработки в Excel при помощи такого нехитрого инструмента:
Code:
TYPES:  BEGIN OF st_code,
          progname  TYPE reposrc-progname,  "KEY: tadir-obj_name,
          r3state   TYPE reposrc-r3state,   "KEY: ABAP: статус программы (активно, сохранено, перенесено...)
          versdata  TYPE sy-datum,
          verstime  TYPE sy-uzeit,
          line_num  TYPE i.                 "KEY
        INCLUDE STRUCTURE abaptxt255.
TYPES:  END OF st_code.

"таблица 'Перечень программ' (заголовки)
DATA it_src TYPE STANDARD TABLE OF reposrc.
DATA wa_src LIKE LINE OF it_src.

"таблица 'Строки кода программ' (позиции)
DATA it_code  TYPE STANDARD TABLE OF st_code.
DATA wa_code  LIKE LINE OF it_code.

DATA it_abap  TYPE abaptxt255_tab.
DATA wa_abap  LIKE LINE OF it_abap.

"эти два поля как бы играют роль "номера версии"
DATA versdata  TYPE sy-datum.
DATA verstime  TYPE sy-uzeit.

DATA abaplines_cnt TYPE i.


START-OF-SELECTION.

  versdata = sy-datum.
  verstime = sy-uzeit.

  SELECT * FROM reposrc INTO TABLE it_src
      WHERE ( progname LIKE 'Z%' OR progname LIKE 'SAPLZ%' OR progname LIKE 'LZ%' )
        "AND cnam = '<ваш имя пользователя>' "создатель
        AND unam = 'IVANOV' "изменятель
        "AND progname = 'Z...'
        .

  SORT it_src BY progname r3state.
  LOOP AT it_src INTO wa_src.

    READ REPORT wa_src-progname INTO it_abap.

    LOOP AT it_abap INTO wa_abap.
      CLEAR wa_code.
      wa_code-line_num = sy-tabix.
      wa_code-progname = wa_src-progname.
      wa_code-r3state  = wa_src-r3state.
      wa_code-versdata = versdata.
      wa_code-verstime = verstime.
      wa_code-line     = wa_abap-line.
      APPEND wa_code TO it_code.
    ENDLOOP.

  ENDLOOP.

  abaplines_cnt = LINES( it_code ).
  WRITE: / abaplines_cnt.

  "и далее слив таблиц it_src и it_code в Excel


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июн 07 2012, 21:11 
Младший специалист
Младший специалист
Аватара пользователя

Зарегистрирован:
Пн, авг 11 2008, 17:36
Сообщения: 84
Откуда: Moscow
Пол: Мужской
Можно. READ REPORT, как уже указали.
Если программа с инклудами, то нужно самому искать эти инклуды в коде или с помощью группы функций SEUA.

_________________
CONTINUE OBSERVATION OF... INTERRUPTION!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 09:33 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
Gustav написал:
Я иногда "бэкаплю" свои разработки в Excel

Зачем?
При деблокировании запросов сохраняются версии. Можно и временные версии создавать ;)

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 10:25 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Удав написал(а):
При деблокировании запросов сохраняются версии. Можно и временные версии создавать ;)

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

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 11:28 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июл 16 2010, 09:57
Сообщения: 106
Откуда: СПб
Пол: Мужской
Gustav написал:
Я иногда "бэкаплю" свои разработки в Excel
Удав написал(а):
Зачем?
ArmAnn написал:
бэкап может потребоваться, при наличии некоторого бардака и/или здоровой паранойи :)

Подумал, рассудил. Побуждает "бэкапить" в Excel меня примерно следующее:

1. Здоровая паранойя :)

2. Некоторые исследовательские примеры мастерю не в системе разработки, а в тестовой системе - по причине значительно большей актуальности данных. И просто потерять эти примеры в результате перезаливки данных из продуктива мне будет обидно. Обычно эти примеры ограничиваются одним report'ом, т.е. без текстов, инклудов и т.п. А просто копипастить их потом в разработку - иногда можно забыть, иногда нет особой необходимости.

3. Всевозможные "KPI-айные" подсчеты, которые периодически любит устраивать руководство - строки кода, символы кода, пустые строки, строки комментариев и т.п.

4. Наконец, возможность увидеть весь код глобального класса как код локального, т.е. в одном месте. Мне известно, что можно локальный класс превратить в глобальный полезной командой: SE24 \ Тип объекта \ Импортировать \ Локальные программные классы. Обратная операция - из глобального сделать локальный - мне неизвестна, как неизвестна и возможность вывести весь код глобального в единый обзор.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 11:47 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, окт 06 2005, 16:44
Сообщения: 3080
Откуда: Москва
ArmAnn написал:
один замечательный человек вкатил на сервер разработки очередь запросов из теста, соответственно пропало все что было нажито непосильным трудом и еще не деблокировано

А как же backup системы разработки? :o

_________________
С уважением,
Удав.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 12:07 
Старший специалист
Старший специалист

Зарегистрирован:
Вт, ноя 18 2008, 10:40
Сообщения: 342
Откуда: Пермь
Пол: Мужской
Gustav написал:
Обратная операция - из глобального сделать локальный - мне неизвестна, как неизвестна и возможность вывести весь код глобального в единый обзор.

В версии 7.02 это уже реализовано, в SE24 появилась соответствующая кнопка


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 13:58 
Гуру-модератор
Гуру-модератор
Аватара пользователя

Зарегистрирован:
Пн, окт 11 2004, 20:32
Сообщения: 2470
Пол: Мужской
Удав написал(а):
ArmAnn написал:
один замечательный человек вкатил на сервер разработки очередь запросов из теста, соответственно пропало все что было нажито непосильным трудом и еще не деблокировано

А как же backup системы разработки? :o
там был как раз случай некоторого бардака :)

_________________
- Может ли настоящий мастер кунг-фу получить по морде?
- Настоящий мастер может все!


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 18:34 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 351
Gustav написал:
Я иногда "бэкаплю" свои разработки в Exce
А почему в Excel? Чем текстовые файлы хуже?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Пт, июн 08 2012, 22:08 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Пт, июл 16 2010, 09:57
Сообщения: 106
Откуда: СПб
Пол: Мужской
LAT написал(а):
Gustav написал:
Я иногда "бэкаплю" свои разработки в Exce
А почему в Excel? Чем текстовые файлы хуже?

:) потому что Excel - а б а ж а ю! Ну а если посерьезнее, то выкидываю даже не столько для хранения, сколько для анализа. А в текстовом файле - что анализировать? Все равно придется в Excel тащить. Если же Вы о возможных скоростях выгрузки (дескать, текстовый всяко быстрее), то за год у меня сложился весьма приличный алгоритм экспорта, который миллион записей кода выкидывает в Excel в пределах 5 минут. А уж моих-то несколько десятков тысяч - вообще за считанные секунды, так что - вот... Не XML, обычное OLE2; и, кстати, выводится в несохраненный файл, т.е. просто в память - и мне это особенно по душе против текстового.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июл 24 2014, 11:34 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
Gustav написал:
...
4. Наконец, возможность увидеть весь код глобального класса как код локального, т.е. в одном месте. Мне известно, что можно локальный класс превратить в глобальный полезной командой: SE24 \ Тип объекта \ Импортировать \ Локальные программные классы. Обратная операция - из глобального сделать локальный - мне неизвестна, как неизвестна и возможность вывести весь код глобального в единый обзор.

Вот, случайно наткнулся, есть программа SEO_SHOW_CLIF_INCLUDES.
Позволяет генерить АБАП-код всего глобального класса.
Проверил в 4.6D и 7.01 - работает.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июл 24 2014, 12:36 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 351
В 7.31 не работает. При запуске выдает ошибку "Invalid parameter OBJECT/OBJECTCLASS" (внутри ФМ-а RS_ACCESS_PERMISSION).


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Доступ к исходному коду ABAP программ из другой программы
СообщениеДобавлено: Чт, июл 24 2014, 13:12 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, авг 19 2004, 17:37
Сообщения: 1962
Откуда: Москва
Пол: Мужской
LAT написал(а):
В 7.31 не работает. При запуске выдает ошибку "Invalid parameter OBJECT/OBJECTCLASS" (внутри ФМ-а RS_ACCESS_PERMISSION).

Ну, в 7.31 уже в SE24 для этого есть кнопочка "На базе исходного текста".

Хотя вот таким премом можно и старую прогу заставить работать:
Code:
REPORT ZSHOW_CLIF_INCLUDES.

Parameters:
  p_Class type seoclsname.
Submit SEO_SHOW_CLIF_INCLUDES
  with p_class = p_Class.

Однако осторожно! Похоже у неё появилась возможность сохранять исходник. Вопрос - куда, в глобальный класс?! Не зря, видимо, доступ закрыли, спрятав сел. параметр.
И к стандартным классам (не Z) все равно не дает доступа, видимо из-за возможности сохранять.

_________________
"For all entries" не в SAP-ах, "for all entries" в головах! :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.

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


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

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


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

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