Руководство начинающего консультанта по SAP

Автор работы: Пользователь скрыл имя, 17 Января 2011 в 18:53, реферат

Описание работы

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

Файлы: 1 файл

SAP.docx

— 35.35 Кб (Скачать файл)

Что нужно знать из области базиса. Ландшафт. Транспортная система. Роли.

Рассмотрим основные понятия из области базиса.

Система (центральная инстанция) - представляет собой сервер приложений вместе с СУБД.

Мандант (клиент). - это организационно независимая часть в системе R/3. Каждый мандант имеет собственную среду данных, т.е. собственные основные и переменные данные, присвоенные основные записи пользователей, планы счетов и специфические параметры настройки.В системе может быть несколько мандантов. Почти во всех таблицах БД с пользовательскими данными и настройками есть поле, являющиеся частью ключа, которое содержит номер манданта. Когда программа запрашивает какие-либо данные из такой таблицы, к запросу автоматом дописывается что-то вроде and mndt=НомерМандантаКудаВыВошли

На практике это означает, что в каждом манданте может работать отдельное предприятие  не мешая работающим в других мандантам. Но программы на 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 и проверяется  при выполнении программы. В зависимости  от результатов проверки программа  может осуществлять различные действия, например, выдавать сообщение "Недостаточно полномочий"

Профиль полномочий - это скомпилированная (приведенная в машинный вид) роль. Собственно система работает именно с профилями, роли пользователю можно и не присваивать (если нет нужды в меню). На практике консультант обычно оперирует ролями.

 
Версии компонентов. Обновления.

Текущая иерархия версий наиболее популярного продукта SAP выглядит следующим образом:

- SAP R/3 4.6 (A,B,C,D)  Функционируют на основе «SAP базиса» 
- SAP R/3 Enterprise 4.7  Работает в среде SAP WEB AS 
- mySAP ERP 2004 (ECC 5.0) Функционирует на платформе Netweaver 04 
- mySAP ERP 6.0 (ранее известен как SAP ERP2005 (ECC 6.0)). Функционирует на платформе Netweaver 7.0 (ранее известен как Netweaver 2004s)

( ECC – Enterprise Central Core) 
( WEB AS – WEB Application server) 
Более полная информация по платформе
NetWeaver

Если щелкнуть на пункте меню Система -> Статус -> «Лупа», можно увидеть версии системы.  
- SAP_APPL = 470 (для системы SAP версии 4.7)

- SAP_APPL = 46С (для  системы SAP версии 4.6С)  
 
[У кого есть возможность, проверьте для других систем]

Число в следующей  колонке показывает номер последнего установленного пакета поддержки (содержит все исправления ошибок и дополнения, выпущенные к некоторой дате). Когда  вы смотрите ноты, следует обращать внимание на версию системы, для которой  она предназначена и уровень  пакета, в который эта нота входит (может быть уже установлена в системе). Обновление этого компонента (обновляется ABAP-код) затрагивает большинство стандартных модулей.

- C-CEE это «русский Add-on» («дополнение») Выпускается  Московским отделением SAP. Обеспечивает  набор программ и транзакций  для поддержки специфики отечественного  бухучета. Начиная с версии >ECC 5.0, для России не он нужен (требуется ставить только на Украине и в Казахстане), поскольку функциональность, изначально включенная в дополнение, теперь входит в стандартную поставку системы.

- SAP_BASIS, SAP_ABA –  эти компоненты обеспечивают  функционирование «базиса». Их обновление  не так сильно заметно в  системе. 

 
Что нужно знать  о программировании на ABAP/4

Понимание, что  именно делает программа, весьма желательно для консультанта. Часто исследование под отладчиком или просто просмотр кода являются единственным способом определить причину проблемы и найти  ее решение. Это требует хорошего знания ABAP/4. [книга «Разработка приложений SAP R/3 на языке АВАР/4», курсы BC*]

Незнание языка  программирования не является фатальным. Можно ставить грамотные технические  задания разработчикам и без  этого. Нужно уметь просматривать  таблицы (транзакции SE11, SE16). Как называется интересующее вас поле, и в какой  таблице оно находиться, можно  определить следующим образом:

1) Находим его  на экране, ставим туда курсор.  
2) Жмем F1, затем кнопочку «Техническая информация».

Кстати, там же можно найти еще много полезной информации.

Что-то работает не так как  надо или не работает вообще. Решаем проблему.

В первую очередь  надо обязательно убедиться, что  имеет место ошибка. Тяжелей всего  чинить то, что не сломалось. Если 2*2 не равно четырем, первым делом уточните: может быть, мы видим сумму с  НДС. 99% обращений пользователей  по поводу "ошибки системы" лечатся  чтением инструкции и вправлением  мозгов.

Дамп - самая серьезная из ошибок системы. Возникает при полной невозможности дальнейшего исполнения программы на ABAP/4. Выполнение транзакции прекращается. На экран выводиться информация, описывающая суть ошибки, место ее возникновения и рекомендуемые ключевые слова для поиска нот.

Нота (note) - "заметка" (в самой системе, например, в транзакции snote ноты называются "указаниями", нем. Hinweis), выпускаемая SAP, описывающая проблему и способы ее решения. Помимо текстовой части может содержать исправления (корректуры) для программ на ABAP/4. Ноты следует искать на service.sap.com. Требуемые для входа имя и пароль вы можете получить у базисников или руководителя проекта. Установкой нот занимаются базисники.

Если стандартная  транзакции выдает сообщение об ошибке с кодом:

1) читаем внимательно  сообщение (лучше войти в систему  на английском языке), думаем, проверяем  настройки, перечитываем хелп  и курсы...  
2) ищем ноту по коду ошибки.  
3) ищем ноту по коду транзакции и по ключевым словам на английском языке, описывающим проблему. Например "migo save error".  
4) жалуемся в SAP с того же сайта service.sap.com. Если вопрос не касается отечественных доработок (русского аддона), то вопрос лучше формулировать по-английски: возрастают шансы получить быстрый и компетентный ответ.  
5) если ждать нет возможности или хочется самостоятельно разобраться в причине - запускаем транзакцию под отладчиком. Это сложно и долго. Необходимо иметь полномочия на отладку. Необходимо хорошее знание ABAP/4. Отладка запускается вводом команды /h  
6) ищем, не обсуждался ли подобный ответ на форумах. (Там всегда есть кнопка «поиск»). 
7) задаем четко сформулированный вопрос на форуме.

 
Как настраивать (дорабатывать) систему под клиента

В первую очередь  систему приводят в соответствие с требованиями бизнеса путем  изменения настроек. Запустив транзакцию SPRO, можно получить доступ к всевозможным настройкам. Собственно, данная транзакция является удобной оболочкой (меню) для  огромного количества транзакций, работающих с конкретными настройками.

Варианты  транзакций - это еще один способ подгонки системы под требования клиента. Позволяет прятать или делать обязательными для ввода отдельные поля, вкладки и т. п.

Часто существующих отчетных форм недостаточно. В этом случае пишут свою программу (транзакцию) на ABAP/4, которая выбирает и выводит  данные в требуемой форме.

При необходимости  можно создавать свои таблицы  с названием на Z* и добавлять  в стандартные таблицы новые  поля с названием на Z*.

Во многих ABAP-программах предусмотрены специальные места, куда можно вписывать дополнительный код на ABAP/4 с целью выполнения транзакцией некоторых дополнительных действий. Это customer-exit (фактически - вызов  функции с параметрами, тело функции  мы пишем сами), user-exit (фактически include – место для вставки произвольного  кода) и BADI (близко по смыслу к customer-exit, но реализовано методами объектно-ориентированного программирования). [BC425]. Информацию о  возможности воспользоваться расширением  можно найти в SPRO, щелкнув на "листочке" с описанием настроек. Там же обычно указывается, в какой момент будет  отрабатывать ваш код. Следует соблюдать  осторожность, т.к. ошибки могут привести к нарушению в работе стандартных  транзакций вплоть до потери данных.

Много интересной информации можно найти здесь http://platon69.narod.ru/begin.html

Иногда "хотелки" пользователей таковы, что реализовать  их можно, только изменив стандартный  код системы. Несмотря порой на кажущуюся  легкость и незначительность изменений ("вот тут одну строчечку поменять"), следует иметь в виду, что в  долгосрочной перспективе это приводит к БОЛЬШИМ проблемам с вероятностью в 99%. Искусство консультанта, в том  числе, состоит и в умении переформулировать  требования пользователей таким  образом, чтобы их можно было реализовать  в системе приемлемым способом.

 
Постановка грамотных  ТЗ на разработку

ТЗ (техническое задание) - это документ, в котором постановщик (консультант) описывает, что именно должен сделать (запрограммировать) разработчик (абапер). "Как именно" он должен реализовывать ТЗ, указывать не нужно, за исключение самых общих моментов.

Информация о работе Руководство начинающего консультанта по SAP