Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пособие авар.doc
Скачиваний:
62
Добавлен:
02.09.2019
Размер:
2.34 Mб
Скачать

Часть III. Полезные советы Создание abap программы без ключа разработчика

Иногда необходимо срочно исправить/написать программу или функциональный модуль, а ключа разработчика нет. При условии, что есть полномочия на отладку, можно воспользоваться следующим способом:

  1. Открыть на просмотр ФМ DEVELOPER_CHECK.

  2. Поставить точку прерывания на строке 24 (IF SY_SUBRC EQ 0).

  3. Начать редактировать свою программу / ФМ.

  4. Каждый раз, когда будет срабатывать точка прерывания, изменять значение поля SY-SUBRC на «0».

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

Поиск внутренних таблиц

Очень часто при разработке в SAP BI необходимо найти ту или иную таблицу, в которой хранятся нужные данные. К примеру, нужно найти системную таблицу, в которой хранятся пользователи системы. Для этого нужно действовать по следующему алгоритму:

  1. Открыть транзакцию ведения данных (в качестве примера, это транзакция ведения пользователей SU01);

  2. Поставить курсор в поле с данными (имя пользователя) и нажать F1;

  3. В появившемся окне нажать на иконку «Техническая информация» ;

  4. В открывшемся окне можно увидеть имя таблицы и перейти к её свойствам по двойному клику ЛКМ

Рисунок 57

  1. В некоторых случаях по этому алгоритму может быть получено имя структуры для вывода данных на экран, а не таблицы БД. В этом случае нужно перейти по двойному клику ЛКМ к ведению свойств объекта, и открыть просмотр списка объектов (Ctrl-Shift-F5 или ). В открывшейся иерархии объектов пакета выбрать Объекты словаря -> Таблицы БД и просмотреть имеющиеся там таблицы;

Рисунок 58

  1. Если нужную таблицу так и не удастся найти, нужно будет просмотреть таблицы в пакетах, имена которых близки к имени пакета с найденой структурой (к примеру, если имя пакета «SUSR_KRN», то есть смысл просмотреть пакеты по маске «SUSR*»);

  2. Если предыдущие шаги не дали результата, то можно попытаться найти нужную таблицу, включив трассировку доступа к БД (транзакция ST01) с последующим анализом записей лога.

Редактирование данных в таблицах sap, недоступных для ведения

Что бы иметь возможность редактирования данных в таблицах, закрытых для ввода, нужно зайти в транзакцию SE16N (в некоторых версиях UASE16N) и ввести в поле ввода кода транзакции «&SAP_EDIT».

Если эти транзакции не доступны, то ведение можно осуществить через транзакцию SE11. Для этого нужно выполнить следующую последовательность действий:

  1. Зайти в SE11;

  2. Открыть требуемую таблицу на просмотр;

  3. Выделить нужную запись;

  4. Зайти на просмотр;

  5. Включить ABAP-отладку (Меню: Система -> Утилиты -> ABAP-отладка);

  6. Нажать на значек «Далее» ( );

  7. Откроется окно отладчика. В нем будет следующий код:

if code = 'SHOW'.     set titlebar 'TAB' with name 'anzeigen'(100).   elseif code = 'EDIT'.     set titlebar 'TAB' with name 'ändern'(101).   elseif code = 'INSR'.     set titlebar 'TAB' with name 'einfügen'(102).   elseif code = 'ANVO'.     set titlebar 'TAB' with name 'einfügen'(102).   elseif code = 'DELE'.     set titlebar 'TAB' with name 'löschen'(103).   endif.

  1. Значение переменной code будет равно 'SHOW'. Нужно изменить её на необходимое, и продолжить выполнение программы.