30 марта 2014 г.

Настольная книга SAP-консультанта

Недавно дошли руки до книги, которая давно лежала на полке, Джон Рид и Майкл Доан "Настольная книга SAP-консультанта".

Авторы книги американские эксперты в области SAP-консалтинга. Причем, занимаются они, в основном, подбором персонала, вопросами обучения и карьеры в области SAP.

Впервые книга была издана в США в 1999 году, потом переиздана в 2004. На русский язык была переведена и издана в 2008 году. Люди, которые занимались локализацией, в предисловии делают упор на то, что российский рынок SAP отстает от американского примерно на 10 лет. Этим они пытаются объяснить, чем же может быть полезна данная книга для читателей из нашей страны с учетом года издания оригинальной версии.

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

Так же освещены общие моменты: как правильно составлять резюме, проходить телефонное и личное собеседование. Не обошли авторы тему обучения в SAP AG или сторонних компаниях, сертификацию.

В конце книги приведены примеры из работы самих авторов. Как, я и упоминал, они занимаются разработкой стратегии развития SAP консультантов и поиска работы. То есть приведены примеры реальных людей, которые пытались менять работу, следуя той или иной линии в карьере. А авторы помогали им советами, раскладывая по полочкам плюсы и минусы того или иного решения/компании.

В целом, книга неплохая. Даже несмотря на американское происхождение и "не первую свежесть". Есть что почерпнуть для себя и увидеть плюсы и минусы внутренней кухни SAP консалтинга. Некоторые моменты, такие как, уровень доходов консультантов на американском рынке в 1999-2004 годах, представляют очень низкую ценность для нас. Некоторые моменты, как например, как составлять резюме или проходить собеседование, являются общими и не SAP-специализированными. Но есть и действительно реальные моменты из жизни SAP консультантов, мысли о карьерном развитии и о том, куда же движется рынок SAP.

Вывод: чем младше вы в карьерном плане, как SAP консультант и как IT специалист, тем полезнее вам будет эта книга.

Я был удивлен, когда обнаружил, сколько эта книга стоит в магазинах. Наверное, каждое слово "SAP", встречающееся в книге, добавляет 1 рубль к цене. :)

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

Автор: Шиболов Вячеслав Анатольевич


28 марта 2014 г.

Обучение SAP Basis. Практика. Новый пакет заданий SAPADM_04.


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

В моей программе обучения SAP Basis появился новый пакет заданий - SAPADM_04.

Пакет SAPADM_04 состоит из этапов:
  • 04.01. Установка дополнительной диалоговой инстанции SAP системы. Настройка логон групп.
  • 04.02. Гомогенная копия SAP системы.
  • 04.03. Создание манданта SAP системы через внутреннее копирование.
  • 04.04. Настройка транспортной системы между двумя системами с собственными транспортными доменами.

В данном пакете 126 страниц заданий, описанных на русском языке, со снимками экранов SAP систем, с полезными ссылками на документацию и SAP ноты.

Пакет зависит только от базового пакета SAPADM_01.

Результат выполнения заданий - двухсистемный ландшафт с настроенной транспортной системой. А так же умение создавать и переносить транспортные запросы, создавать и копировать мандант внутри одной системы, устанавливать дополнительные диалоговые инстанции и работать с логон-группами.

Примечание: выполнение этапов этого пакета требует дополнительных аппаратных ресурсов, так как производится установка еще одной SAP системы к уже установленной в пакете SAPADM_01.

Стоимость пакета: 6 000 рублей.

Страница с описанием программы и всеми пакетами - тут.

Автор: Шиболов Вячеслав Анатольевич


26 марта 2014 г.

Копирование манданта SAP системы

Как вы знаете, в SAP системе есть такое понятие как мандант. Мандант системы, с одной стороны, это набор таких данных как: манданто-зависимые настройки (customizing), основные записи пользователей (users) и основные данные или данные приложений (application data, master data) (рис. 1).

Рис. 1. Структура данных в SAP системе.

С другой стороны, с технического ракурса, мандант это набор записей таблиц, у которых поле MANDT = <номер манданта>. На уровне бизнеса же, мандант - это автономная единица в SAP системе для работы предприятия и хранения данных. В теории, два предприятия могут работать в разных мандантах одной системы без какого-либо нарушения целостности и безопасности данных.

Учтите что, в англоязычной литературе, мандант это client.

Мандант имеет номер из трех цифр и, в системе может быть до 1000 мандантов (от 000 до 999).

После установки SAP системы, в зависимости от типа и версии продукта, в ней могут присутствовать несколько стандартных мандантов, таких как, 000, 001 и 066.

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

Существует три вида процедуры копирования:
  • локальная копия манданта,
  • удаленная копия манданта,
  • экспорт/импорт манданта.

Локальная копия манданта подразумевает, что копирование производится внутри одной SAP системы.

Процедура выполнения локальной копии следующая:
  1. В транзакции BD54 создать логическую систему для нового манданта.
  2. В транзакции SCC4 создать запись о новом манданте.
  3. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  4. В транзакции SCCL запустить копирование с выбранным профилем для копирования.
  5. Для мониторинга процесса использовать транзакцию SCC3.
Полезные SAP notes:

Удаленная копия манданта (remote client copy) выполняется между двумя системами. Копия выполняется "на лету", то есть физической копии манданта не создается, место на жестком диске не используется. В качестве механизма используется RFC.

Процедура удаленного копирования манданта:
  1. В целевой системе войти в транзакцию BD54 и создать логическую систему для нового манданта.
  2. В целевой системе в транзакции SCC4 создать запись о новом манданте.
  3. В транзакции SM59 создать RFC-соединение до исходного манданта/системы.
  4. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  5. В транзакции SCC9 запустить копирование с выбранным профилем.
  6. Для мониторинга использовать транзакцию SCC3 в целевой системе.
Полезные SAP notes:

И при локальном, и при удаленном копировании можно включать параллелизм. Для этого в транзакциях копирования при планировании следует выбрать пункт меню "Перейти к -> Параллельные процессы" (рис. 2).

Рис. 2. Планирование параллельных процессов при копировании манданта.

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

Процедура экспорта манданта следующая:
  1. В исходной системе/манданте войти в транзакцию SCC8 и запланировать экспорт в транспортные запросы с выбранным профилем.
  2. Мониторинг производится в транзакции SCC3.

Процедура импорта манданта следующая:
  1. В целевой системе в транзакции BD54 создать логическую систему для нового манданта.
  2. В целевой системе в транзакции SCC4 создать запись о новом манданте.
  3. Войти в новый мандант системы под псевдо-пользователем SAP* с паролем PASS.
  4. Войти в транзакцию STMS, найти запросы с экспортом, запустить импорт запросов.
  5. После окончания импорта войти в транзакцию SCC7 и выполнить шаги пост-импорта манданта.
  6. Мониторинг последнего шага в транзакции SCC3.

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

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

При копировании манданта репозитарий не копируется (рис. 1). При удаленном копировании можно (выбрав соответствующий профиль копирования) скопировать манданто-независимые настройки. Объединить два манданта в один при копировании нельзя.

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

При удаленном копировании и экспорте/импорте необходимо чтобы структура таблиц исходной и целевой системы совпадали. Сравнение можно выполнить на предварительном этапе через кнопку "RFC/сравнение систем" (рис. 3).

Рис. 3. Сравнение структуры таблиц перед удаленным копированием.

Еще полезные SAP notes:

Автор: Шиболов Вячеслав Анатольевич


18 марта 2014 г.

Блог: дизайн, удобство использования


Я веду этот блог с августа 2008 года. За это время мною было написано 164 поста, которые в той или иной степени связанны с администрированием SAP систем. Объем информации приличный и вопрос удобства поиска и чтения встает всё чаще и острее.

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

Так же время от времени я задумываюсь о внешнем виде и пытаюсь внести полезные изменения. Сам я люблю минималистичный и чистый дизайн, который не отвлекает от процесса получения информации. Но тут я ограничен рамками того, что мне может предложить платформа blogger.com.

В комментариях к данному посту я буду рад прочитать ваши отзывы и предложения об удобстве и внешнем виде моего блога. Спасибо.

Автор: Шиболов Вячеслав Анатольевич



13 марта 2014 г.

35 лет или как я попал в SAP

День рождения хороший повод оглянуться назад и вспомнить прошлое. :)


В 2002 году я закончил Казанский Государственный Технический Университет им. Туполева (бывший КАИ) по специальности 2201 "Вычислительные машины, комплексы, системы и сети". Специальность довольно обширная, как я сейчас понимаю, являющаяся отличной базой для будущего системного администратора. Но тогда я совершенно не знал чему меня учили, к чему готовили, и кем мне теперь работать. Конечно, я был очень увлечен компьютерами, программированием, железом (причем на тот момент без доступа в Интернет), но узкой специализации во время обучения не приобрел. Подрабатывал я во время обучения мало, и то - только на "грязных" работах, типа прокладки ЛВС с перфоратором наперевес. :)

После окончания института я вернулся в родной город Альметьевск и начал искать работу. Градообразующим предприятием и самым "престижным" местом работы в городе являлось ОАО "Татнефть". Туда я и пробовал устроиться. Набор во всю компанию в тот период был закрыт, но, благодаря небольшим связям и моему диплому "с отличием", для меня сделали небольшое исключение, и в мае 2002 года я устроился в подразделение "ТатАСУнефть" в отдел "Unix систем и баз данных". На тот момент отдел включал в себя три бюро: "Unix систем", "Баз данных ORACLE" и "Систем SAP", руководил отделом хороший человек - Ильгам Мухаметзянов. На собеседовании (если это можно так назвать) он меня спросил: "А слышал ли ты что-то про систему SAP?". На что я ответил, что знаю что такое САПР, но про SAP слышу впервые. :)

Свой трудовой стаж я начал в бюро "Unix систем", где и началось моё путешествие в мир стройных, элегантных операционных систем семейства Unix. В ОАО "Татнефть" этот мир был представлен в основном HP-UX на оборудовании компании HP. Было так же немного FreeBSD и Linux, пару раз видел через окно консоли IBM-ский AIX. Пройдя несколько обучающих курсов в Hewlett-Packard, я проникся страстью к этим системам. Попутно мне пришлось выучить язык Perl и Web-программирование, когда я разрабатывал централизованную систему сбора статистики о загрузке серверов под управлением HP-UX и записей системного журнала.

Но все течет, все меняется. Через год моей "спокойной" и плодотворной работы в вышеупомянутом отделе в ОАО "Татнефть" началась очередная реорганизация подразделений/отделов (что, кстати говоря, там не редкость). Это привело к тому, что к нашему отделу присоединилось бюро по администрированию серверов под управлением операционной системы MS Windows, и сменился начальник отдела. Новый начальник начал реорганизацию внутри отдела и предложил мне перейти в бюро "SAP систем". Ох, как мне тогда не хотелось этим заниматься. :) Мне так нравилась строгость Unix и аппаратная мощь оборудования HP (к слову, тогда был куплен и запущен сервер серии HP SuperDome и дисковый массив уровня XP 1024), что переходить в какой-то SAP, где ребята часто зашивались и трудились до позднего вечера и по выходным, не прельщало совсем. Но выбор за меня был сделан, и меня "уговорили", пообещав, что так как системы SAP работают на тех же серверах HP, то я буду заниматься и ими тоже.

Я начал работать с SAP системами под руководством хорошего специалиста и моего друга Вахита Хисамова (привет Вахит, если ты читаешь этот пост). Прошел несколько обучающих курсов в SAP AG. В данный период времени я занимался на 50 % операционными системами и серверами, и только на 50 % системами SAP.

В конце 2003 года я решил переехать в Москву. Стоит отметить, что в нашем отделе были собраны хорошие специалисты в области администрирования Unix-систем, баз данных Oracle, систем SAP, и нередки были разговоры о том, что в Москве такие специалисты зарабатывают гораздо больше. Я бы сказал, что отношение зарплат было минимум 1 к 6 не в пользу работы в Альметьевске. Поэтому Москва для всех была "мечтой". И сейчас уже, как минимум, 3 специалиста из того отдела работают в Москве. Отпускать меня очень не хотели, был большой скандал, так как если вы посмотрите мое резюме, то увидите, что за эти 2 года в мое обучение было вложено очень много долларов и евро (9 курсов в HP и SAP AG). Но ничего мне предложить не смогли и в феврале 2004 года я уехал.

В Москве, оказавшись единственным специалистом по Basis в небольшой консалтинговой компании, мне пришлось заняться SAP системами на все 110 %. Это был огромный толчок в моем профессиональном росте, когда на меня легла вся ответственность и рядом не было администраторов, на которых можно "свалить" часть работы. И опять мне повезло. У меня был очень хороший руководитель SAP практики, который в меня верил и поддерживал. Ну мне так кажется. :)

Не буду превращать этот пост в мемуары и на этом закончу. Мое полное резюме можно найти тут

Напишите, пожалуйста, в комментариях, а как вы попали в SAP?

4 марта 2014 г.

Ошибки в VirtualBox 4.3.X

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

Так вот, после обновления на VirtualBox ветки 4.3.X обнаружил, что некорректно конфигурируется количество процессоров. Программное обеспечение не дает установить больше 2-х виртуальных ядер процессора, хотя физический процессор имеет 6 ядер (рис. 1).

Рис. 1. Экран настройки количества процессоров в версии VirtualBox 4.3.X.

Ошибку наблюдал во всех версиях ветки 4.3.Х, которые я устанавливал.

Для решения пока откатился на последнюю версию из предыдущей ветки - VirtualBox 4.2.22, которую можно скачать тут. Там с этим всё в порядке (рис. 2).

Рис. 2. Экран настройки количества процессоров в версии VirtualBox 4.2.22.

Автор: Шиболов Вячеслав Анатольевич


3 марта 2014 г.

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

В этом посте рассказывая про транспортную систему (TMS), я уже упоминал, что она используется не только для импорта транспортных запросов, но и для обновления системы пакетами поддержки (SAP Support Packages), и при установке дополнений в систему (add-ons).

Процесс импорта в SAP систему, в отличии от экспорта (деблокирования транспортных запросов), сложный многофазный процесс. Во время импорта используется большое количество утилит:
  • tp - утилита на уровне операционной системы, которая управляет всем процессом импорта, согласовывая работу всех инструментов;
  • R3trans - утилита на уровне операционной системы, которая умеет выгружать и загружать данные в любую базу данных, поддерживаемую компанией SAP AG;
  • RDDIMPDP - диспетчер импорта в SAP системе, запускающий фоновые RDD*-задания;
  • RDD*-задания - набор фоновых ABAP-отчетов, которые выполняют различные фазы импорта в SAP системе. 
Утилита tp согласовывает работу фоновых заданий через таблицы базы данных TRBAT и TRJOB. В первую из них утилита tp добавляет задания для диспетчера импорта (RDDIMPDP) в виде списка запросов на импорт с обозначением текущих фаз импорта. Во второй фиксируются номера и ID фоновых RDD*-заданий во время выполнения. После окончания импорта утилита tp удаляет записи из таблиц, считывая коды возврата. Таким образом, если в данный момент не происходит импорт запросов на перенос, то данные таблицы не должны содержать записи.

Основные шаги импорта перечислены в таблице на рисунке 1.

Рис. 1. Шаги по импорту транспортных запросов/пакетов поддержки в SAP систему.

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

Но вернемся к таблице. Для каждого шага утилитой tp вызывается своя утилита (поле "Инструмент"). Каждый инструмент в поддиректории /usr/sap/trans/tmp генерирует журнал выполнения (поле "Вид журнала"), который после завершения этапа переносится в поддиректорию /usr/sap/trans/log.

Диспетчер импорта (RDDIMPDP) запускается по событию SAP_TRIGGER_RDDIMPDP, которое инициализирует tp с уровня операционной системы через утилиту sapevt (рис. 2). Все RDD*-задания выполняются из под пользователя DDIC (рис. 3).


Рис. 2. Настройки задания RDDIMPDP.

Рис. 3. Пример выполненных фоновых RDD*-заданий при импорте запросов.

Планирование диспетчера импорта производится через отчет RDDNEWPP (000 мандант, пользователь DDIC, транзакция SE38 -> отчет RDDNEWPP -> Выполнить) (рис. 4).

Рис. 4. Планирование фонового задания RDDIMPDP.

Итак, если по какой-то причине импорт запросов/пакетов поддержки не происходит, то проверяем следующее:
  • журнал утилиты tp, который доступен по следующему пути "транзакция STMS -> Обзор -> Импорты -> Перейти к -> ПрогрУпрПереносом (TP): системный журнал (выбрать систему)" (или на уровне операционной системы файл /usr/sap/trans/log/SLOG*.SID);
  • не блокирован ли пользователь DDIC в 000 манданте;
  • в транзакции SM37 анализ запуска диспетчера импорта (RDDIMPDP) и RDD*-заданий;
  • на уровне операционной системы в поддиректориях /usr/sap/trans/tmp и
    /usr/sap/trans/log анализ журналов (рис. 1), определение сбойного шага импорта;
  • в транзакции SE16 проверка записей таблиц TRBAT и TRJOB.

Если перенос запроса завис на одном из этапов, за который отвечает одно из RDD*-заданий, то можно попробовать, войдя в 000 мандант под пользователем DDIC, выполнить программу RDDIMPDP через транзакцию SE38 вручную.

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

Дополнительная информация по данной теме: