SAP FI. Книга 9. Основы разработки на ABAP.
83 страницы
Базис. Ландшафт.
Транспортная система. Роли. 3
Управление переносами. 4
Поддержка SAP. 4
Некоторые полезные
базисные транзакции: 5
snote - проверка
установки нот. 5
SM02
- Сообщение в систему. 6
su01
- параметры пользователя: 6
sm12
- поиск блокировок. 7
SM04
– Список пользователей. 7
AL08 – Список активных
пользователей. 7
SM50 – Обзор процессов. 7
Fibf
– поиск доработок отчетов по событиям. 8
Se20-
просмотр инхастментов. 8
Se24-
построитель классов. 9
SE30 –
Трассировка программ. 9
Se37
– просмотр функциональных модулей. 9
Se38
– просмотр программ. 9
Se91
– просмотр сообщений. 10
Se93
– поиск программы по транзакции. 10
Se11
– просмотр таблиц, ракурсов. 11
se16n. 13
GS02
- наборы. 13
Stvarv
- переменные. 13
se01,
Se10 – просмотр запросов. 13
Stms
– перенос запросов. 15
SCC1
– перенос запросов между системами SAP. 15
SM37
вывод отчёта из фонового режима. 16
St22
- поиск дампов. 16
SM35
- пакеты выполнения программ: 16
SM36
Фоновое задание на выравнивание. 16
su53
- просмотр данных полномочий. 17
Shift-f12 возврат на позицию курсора в отладчике. 18
suim
- транзакция по поиску ролей и полномочий. 18
Su20
– Ведение полей полномочий. 19
Su21
- ведение объектов полномочий. 19
pfcg - настройка ролей. 23
Se91 -
сообщения. 25
Sfp – редактор
формуляра. 25
Трассировка. 26
Настройка пользователя/ролей/полномочий. 26
Активация
бизнес-функций. 26
Разработка. 27
Курсы по разработкам. 27
Se38. 28
Создание функции. 29
Создание include. 32
Считывание параметров
из памяти выполняемой программы. 33
Сбор два запроса в одну
таблицу. 34
Вариант1. 34
Вариант2. 34
Количество строк в
таблице. 35
range
в запросе. 35
Добавление нулей к
строке. 35
Преобразование даты к
внутреннему формату. 36
Перенос данных из
одной структуры в другую.. 36
Изменение полей
финдокумента, без пакетника. 36
Добавление новой строки
в структуру. 37
Вставка в отчёт новой
колонки: 37
Регистрируем расширение. 37
Расширение структуры. 38
Заполнение поля
структуры. 40
Расширение и привязка
к alv. 41
Вставка нового поля в каталог
полей: 42
Вставка2 в отчёт новой
колонки: 45
Дополнительная
структура для J_3RF_VAT_ANALYSIS. 45
Вставка колонки в отчёт
в 26 программе: 47
Добавили поля. 47
Расширение структуры
отчёта. 48
Расширяем структуру all_bsis. 49
Заполняем. 49
Вставка колонки в
стандартный отчёт: 49
Расширяем структуру
отчёта. 50
Прописываем программу
заполнения. 56
Активируем и запускаем
специальные программы: 56
Проверяем. 59
Разработка alv – grid отчёта. 59
Создаём экран в
редакторе. 59
Делаем заголовок: 66
Делаем кнопки. 66
Создаём ссылки в
программе на контейнер и alv grid. 69
Делаем структуру для
алв. 70
Создаём field каталог 71
Заполняем данные для
вывода. 73
Вызов алв. 73
Выполняем вызов экрана
алв. 74
Обработка кнопок. 74
Создание класса
обработки нажатия двойного нажатия ЛКМ.. 77
Создаём объект
класса при создании alv контейнера. 79
Работа с блокировками. 80
Читаем блокировки. 80
Установка блокировки. 81
Вывод лога. 82
Создание лога. 82
Сообщение в лог 82
Показываем лог 83
Рассмотрим основные понятия из области базиса.
Ошибка! Недопустимый объект гиперссылки.
(центральная инстанция) - представляет собой сервер приложений вместе с СУБД.
Ошибка! Недопустимый объект гиперссылки.. - это
организационно независимая часть в системе SAP. Каждый
мандант имеет собственную среду данных, т.е. собственные основные и переменные
данные, присвоенные основные записи пользователей, планы счетов и специфические
параметры настройки. В системе может быть несколько мандантов. Почти во всех
таблицах БД с пользовательскими данными и настройками есть поле, являющиеся
частью ключа, которое содержит номер манданта. Когда программа запрашивает
какие-либо данные из такой таблицы, к запросу автоматом дописывается ограничение
на мандат.
На практике это означает, что в каждом манданте может
работать отдельное предприятие не мешая работающим в других мандантам. Но
программы на ABAP/4, формуляры (отчетные формы) при этом являются общими для
всех мандантов одной системы.
Ошибка! Недопустимый объект гиперссылки. -
хранилище всех ABAP-программ и описания структуры данных и таблиц, с которыми
работают программы. Репозитарий является общим для всех мандантов системы.
Ошибка! Недопустимый объект гиперссылки. -
содержит программы или настройки, которые можно переносить между мандантами или
системами. Деблокированный запрос представляет собой несколько файлов,
содержащих требуемую информацию.
Ошибка! Недопустимый объект гиперссылки. – этот
термин в SAP означает «утверждение», отправку в работу. Пока запрос, документ
не деблокированы они считаются черновиками, их можно изменять и никаких
действий они не вызывают.
Ошибка! Недопустимый объект гиперссылки. - это
несколько систем, между которыми можно переносить настройки и программы.
Несколько систем требуются для обеспечения процесса разработки и настройки. SAP
рекомендует следующий ландшафт: [ADM325, BC325]
1 - система разработки. Содержит 3 манданта
(номера можно использовать другие).
- 300 - в нем можно менять настройки и программы.
При этом любое изменение сразу попадает в запрос на перенос.
- 400 - менять в нем ничего нельзя. Используется для предварительного
грубого тестирования программ (кои "возникают" там одновременно с
300) и настроек (можно перенести запрос без деблокирования с помощью транзакции
scc1)
- 200 - песочница (Sandbox). Предназначен для экспериментирования с
настройками. Поменяли настроечку - сразу там же посмотрели, как изменилась
работа пользовательской транзакции. Запросы на перенос из песочницы не
формируются и соответственно эксперименты никак не могут повредить другим
мандантам в этой и других системах.
2 - контроль качества
В этой системе обычно два манданта:
- 500 - используется для обучения пользователей
- 600 - предназначен для проверки корректности разработки или настройки.
Настройка или разработка может попадать в эту систему
после деблокирования. Вы должны тщательно проверить, что все работает, как
задумано, прежде чем переносить запрос в продуктив.
3 - продуктивная система
Обычно один мандант, в котором работают пользователи.
Согласно требованиям SAP, группа внедрения вообще не должна иметь доступа к
этой системе. Если у вас есть доступ к продуктиву, следует соблюдать крайнюю
осторожность т. к. ошибочные действия ведут к очень тяжелым последствиям. Также
иногда на продуктивной системе делают копию продуктивного манданта (на разных
проектах за этим могут стоять разные цели).
Запрос переносят в продуктив базисники на основании
заявки, подписанной руководителями модуля и проекта (разумеется, все может быть
реализовано по безбумажной технологии, например с использованием Solution
Manager - суть это не меняет)
«Зачем нужно разделение в системе разработки на
настроечный (300) и тестовый (400) манданты? Почему нельзя все сразу пробовать
в 300?»
Это вызвано техническими ограничениями. При вводе в 300
некоторых данных может сложиться ситуация при которой настройку нельзя будет
изменить или удалить т. к. она связана с этими данными.
- Ошибка! Недопустимый объект гиперссылки. –
описывает, какие именно действия может осуществлять пользователь в системе.
- Ошибка! Недопустимый объект гиперссылки. - состоит из отдельных ролей.
Используется для облегчения работы с ролями.
Роли являются мандантозависимыми, создаются и переносятся
так же, как настройки.
Роль может содержать в себе: [ADM940]
1) дополнение к меню пользователя, т.е., транзакции с
названиями, которые будет видеть пользователь;
2) объекты полномочий - описывают, что именно может делать пользователь.
Например, какие транзакции он имеет право запускать, какие именно операции над
данными может выполнять для данного подразделения и т. п.
Следует иметь в виду, что если пользователю присвоены
несколько ролей, в которых есть один и тот же объект полномочий с разными
параметрами, пользователь получит максимальные права из двух возможных
(соответствует логической операции "или"). Поэтому следует быть
внимательными при настройке объектов полномочий в новых ролях -
"несущественный" параметр, которому вы присвоите значение
"*" (разрешено все) может отразиться для другой транзакции и роли.
На программном уровне объект полномочий является
специальным элементом языка ABAP/4 и проверяется при выполнении программы. В зависимости
от результатов проверки программа может осуществлять различные действия,
например, выдавать сообщение "Недостаточно полномочий"
Ошибка! Недопустимый объект гиперссылки. - это
скомпилированная (приведенная в машинный вид) роль. Собственно система работает
именно с профилями, роли пользователю можно и не присваивать (если нет нужды в
меню). На практике консультант обычно оперирует ролями.
Ecatt – инструмент по загрузке
данных на основе принципа «Действуй как я», эмулирует ручной ввод.
телефоны техподдержки SAP
7254341, 7254342
Ноты SAP:
по поднятию приоритета 1281633
по приоритетам 67739
Используйте портал http://service.sap.com/ для поиска сведений, нот по ошибкам и изменениям.
Получите пароль у администратора, тогда по пути http://service.sap.com/support, далее по пути Help&Support вы можете создать запрос на поддержку (message).
К примеру, в случае возникновение ошибки с системой, вам
необходимо далее, по пути Report a Product Error выбрать в какой системе произошла
ошибка:
Далее вы попадаете в форму ввода сообщения в службу
поддержки SAP:
Где в поле «Search term (e.g. keywords, transaction,
program name) *» укажите кратко ошибку и код транзакции на английском языке.
В поле «Component» укажите модуль системы.
Далее по ключевым словам сайт поддержки выполнит запрос
по поиску подходящих нот
Далее по кнопке «Create message» в форме сообщения укажите:
Поле «Short Text» укажите краткое описание ошибки, «Long
Text» подробное описание, «Steps to Reproduce» шаги воспроизведения ошибки, «Attachments»
прикрепите необходимые файлы и их описание. И так далее.
По кнопке «Send
message» сообщение сохраниться и будет передано
в службу поддержки. По вашему сообщению будут присылаться уточняющие отчёты или
планы действий, на которые необходимо своевременно отвечать и исполнять. В
противном случае, если по запросу не будет ответа в определённые сроки, запрос
будет закрыт.
блокировка пользователя снимается по иконке «замок»
поиск по № документа
Позволяет просмотреть с какими транзакциями работает
пользователь и сколько режимов у него открыто. Позволяет отключить пользователя
от транзакции
В частности позволяет просмотреть работает ли ваша “зависшая»
транзакция.
доработки по событиям
фиксируются в таблице. к примеру по 1650 событию дорабатываются отчёты fbl*