31 августа 2017 г.

С днем знаний и традиционные скидки!


Поздравляю всех с днём знаний!

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

Ну и по традиции, в связи с праздником, скидка на первый обучающий пакет SAPADM_01.

Тому, кто напишет мне на почтовый ящик shibolov@gmail.com до 23:59 5 сентября 2017 года я отдам его за 5 000* рублей. 
А тому, кто купит все пакеты (а их на данный момент 5), я так же сделаю скидку, и отдам их все за 20 000* рублей.

Условия акции:
* - в случае покупки пакета или пакетов со скидкой, их надо будет оплатить в течении сентября 2017 года.

Подробности про все обучающие пакеты и отзывы по ссылке.

P.S. Хочу напомнить про опрос "Какие версии SAP ERP системы у вас работают?", который скоро завершится. Кто еще не проголосовал, просьба потратить 1 минуту и пополнить статистику. Хочу сообщить, что на данный момент уже проголосовало 42 человека.

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


28 августа 2017 г.

Как работать с SAP notes - III

Это третья часть статьи описывающая методы работы с SAP notes.
В первой части были описаны типы SAP notes, их структура и стратегия поиска.
Во второй части я остановился на стратегии работы с SAP notes разного типа и начал разговор про SAP Note Assistant.

Продолжим.

Напомню еще раз, что SAP Note Assistant запускается через транзакцию SNOTE (000 мандант, язык EN). SAP notes можно распределять между пользователями, например, поручая другому SAP администратору установку той или иной коррекции. Для этого необходимо установить курсор мыши на загруженную в систему SAP note и выбрать пункт меню "SAP Note -> Set Processing Status" (рис. 1). После этого установить статус в "In Processing by" и указать идентификатор пользователя (рис. 2).

Рис. 1. Установка статуса SAP note.

Рис. 2. Передача SAP note в работу конкретному пользователю.


24 августа 2017 г.

Поддержка MS Office в SAP GUI


Клиентское место SAP GUI (его версия для операционной системы Windows) тесно работает с продуктами из семейства Microsoft Office. Базовая компонента под названием Dekstop Office Integration (DOI) обеспечивает интеграцию между SAP GUI и офисными продуктами от Microsoft. Эта технология позволяет открывать, закрывать, вносить изменения и контролировать документы MS Office через клиентское место SAP.

Поэтому при формировании требований к рабочему месту пользователя, который работает с системами SAP, необходимо учитывать не только поддерживаемые версии ПО SAP GUI, но и поддержку продуктов MS Office со стороны компании SAP.

Ссылку на SAP notes, в которых можно найти информацию по поддерживаемым на данный момент версиям SAP GUI, я давал в этом посте.

Поддерживаемые на данный момент версии MS Office можно найти в SAP note # 722513 - Desktop Office Integration: Maintenance information.

Ожидать, что SAP будет поддерживать продукты, которые не поддерживает сам Microsoft, не стоит, но даты окончания поддержки по версиям можно найти в указанной SAP note.

Так же можно найти, например, что MS Office 365 Online практически не поддерживается, 64-битная версия MS Office 2013 поддерживается только начиная с SAP GUI 7.30 (7 пакет поддержки), а MS Office 2016 (64-бит) только с SAP GUI 7.40 (5 пакет поддержки). В пакетах MS Visio поддерживается только формат Visio 2003 (vst и vsd).

Эту и другую информацию, а так же дополнительные SAP notes можно найти в вышеуказанной SAP note. Еще одна ссылка по этой теме: Desktop Office Integration Architecture.


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


21 августа 2017 г.

Как работать с SAP notes - II

В первой части статьи я начал рассказ про SAP notes, база которых находится в специальном разделе SAP Support Portal, описал их структуру и стратегию поиска. Продолжим.

Итак, выделяют 3 типа SAP notes:
  • информативные,
  • с ручными шагами по настройке,
  • с коррекциями ABAP-кода.

С SAP notes первого типа работать просто: находим, читаем/изучаем, принимаем к сведению. Так как SAP note это официальное заявление со стороны компании SAP с требованиями, описанием архитектуры, процесса или ограничениями, то информацию из SAP note можно включать в документы, используемые внутри предприятия со ссылкой на источник в виде номера и названия SAP note. Так же весь текст любой SAP note можно сохранить себе в виде pdf-файла, нажав в заголовке ноты соответствующую ссылку (рис. 1).

Рис. 1. Экспорт SAP notes в pdf-формат.

Не забывайте только про версию и дату выпуска SAP note: актуализация сохраненных нот обязательна при использовании информации из них.

SAP notes с ручными шагами по настройке требуют тщательного изучения, проверки соответствия SAP ноты вашей системе (раздел Software Components) и внимательного выполнения шагов. Тут уместно вспомнить Григория Прилипко, который советует не стесняться и ставить галочки напротив выполненных пунктов. :)

Рассмотрим, третий тип SAP notes. Здесь и проще, и сложнее. Во-первых, как я уже писал, таких SAP notes в базе большинство. Во-вторых, их нужно в систему устанавливать. Раньше, когда я только начинал свой профессиональный путь, администрирование SAP систем было занятием не для слабаков. Необходимо было, запросив ключ на изменение стандартного объекта, вносить изменения в ABAP-код указанных в SAP note программ вручную, то есть в ABAP-редакторе! Помню, я устанавливал SAP note, в которой были изменения многостраничной программы и порядка 20-25 вставок и изменений. Сперва надо было точно идентифицировать положение в программе, потом  внести изменения и при этом не сломать работающую программу. Потратил я тогда 2 рабочих дня на один include и даже не помню успешно ли всё прошло. :) Изменения вносились через Ассистент Модификаций (Modify Assistant), который параллельно вставлял автоматические комментарии. Из-за большого объема работы с ABAP-редактором часто установку SAP notes перепоручали ABAP-консультанту, который работал совместно с администратором системы.

Сейчас всё стало гораздо проще. В апреле 2001 года компания SAP представила инструмент, который называется SAP Note Assistant. В систему SAP R/3 4.5B - 4.6C он устанавливался в виде Add-on, а в системах, начиная с SAP BASIS 610 и выше, шёл "из коробки". Еще стоит отметить, что устанавливалась версия 1.2, а в системах с SAP BASIS 620 и выше используется расширенная версия SAP Note Assistant, которая имеет несколько непринципиальных изменений. Подробности про версии SAP Note Assistant для каждой версии SAP системы ищите в дополнительных ссылках в конце статьи.

Преимущества SAP Note Assistant:
  • автоматическая установка SAP нот;
  • отслеживание зависимостей от других SAP нот;
  • редактирование ABAP-кода не требует ключа на изменение стандартного объекта;
  • ведение базы SAP нот, которые были загружены или установлены в систему;
  • корректная отработка при последующем обновлении системы и установки пакетов поддержки.

Перед описанием процесса работы с утилитой отмечу, что установка SAP notes в систему производится по стандартной схеме, обеспечивающей контроль качества применяемых изменений. Сначала SAP notes устанавливаются в систему разработки и настройки (DEV), затем изменения, включенные в транспортный запрос, переносятся в систему контроля качества или тестирования (QAS). После тестирования изменений на продуктивных данных в тестовой системе запрос на перенос импортируется в продуктивную систему (PRD) (рис. 2).

Рис. 2. Схема применения SAP notes в ландшафт SAP систем.

Запускается SAP Note Assistant через транзакцию SNOTE, которую надо вызывать в 000 манданте под английским языком. Основной экран представляет собой рабочую область, где представлены SAP notes, с которыми ведётся работа (рис. 3). 

Рис. 3. Основной экран SAP Note Assistant.

Для просмотра списка SAP notes, с которыми в текущей системе уже работали (они были загружены в систему), необходимо перейти в SAP Note Browser, выбрав пункт меню "Goto -> SAP Note Browser". Можно использовать фильтр, в котором указать, например, номер ноты, статус или компоненты, в результате чего система выдаст список всех SAP notes с их статусом (рис. 4).

Рис. 4. Список всех загруженных в систему SAP notes с их статусом.

Для загрузки SAP ноты в SAP Note Assistant необходимо на основном экране (рис. 3) выбрать пункт меню "Goto -> Download SAP Note" (при наличии соединение с SAP OSS) или "Goto -> Upload SAP Note" (при загрузке SAP note c рабочей станции). Первый вариант предпочтительнее, так как всегда будут загружаться только самые свежие версии SAP notes. Второй вариант тоже рабочий. Только для начала необходимо загрузить SAP note на рабочую станцию, нажав  на соответствующую ссылку в заголовке SAP ноты, открытой на SAP Support Portal (рис. 5).

Рис. 5. Загрузка SAP note для SAP Note Assistant.

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

После загрузки SAP note в SAP Note Assistant она попадает в раздел "New". Во время загрузки автоматически происходит проверка SAP note на возможность её установки в текущую систему. Если значок статуса "серый ромб", то данная SAP note не может быть применена в текущей системе, а если "треугольник в синем квадрате", то установка возможна (рис. 6). 

Рис. 6. Статус новых SAP notes в SAP Note Assistant.

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

Проверку на возможность установки SAP note в систему можно запустить дополнительно в любой момент. Для этого необходимо установить курсор на нужную SAP note и выбрать пункт меню "SAP Note -> Check SAP Note" (рис. 7). 

Рис. 7. Проверка возможности установки SAP note в систему.

Дважды щелкнув на строку с номером ноты можно просмотреть её текст (рис. 8), версию  и коррекции кода, которые она предлагает (рис. 9).

Рис. 8. Просмотр текста загруженной в систему SAP note.

Рис. 9. Просмотр информации по SAP note перед установкой.

Как установить или отменить SAP notes через SAP Note Assistant можно будет узнать в последней части статьи, которая будет опубликована в блоге в следующий понедельник.

17 августа 2017 г.

Oracle + Unix: полномочия на директории

Все кто сталкивался с операционными системами семейства Unix знают, что базовые полномочия на файлы/директории разделяются на 3 группы:
  • для владельца файла/директории,
  • для группы, которой принадлежит файл/директория,
  • для всех остальных пользователей системы.
Полномочия можно получить на три типа операции: чтение (read), запись (write) и выполнение (execute) для файлов и переход в директорию для директорий. Кратко они записываются по первым буквам английских понятий: rwx. Последовательность именно такая. Сложив все 3 группы, имеем:
rwx rwx rwx
Например, права на чтение и запись для владельца и группы и запрет всего для остальных пользователей (рис. 1).

Рис. 1. Пример полномочий на файл в Unix.

Существует правило преобразования символьного обозначения в цифровое. Записываем разрешение в виде битов. Например, в приведенном примере это: 
rw- rw- --- = 110 110 000 = 6 6 0 = 660
То есть, выставляем биты-разрешения и получаем 3 числа в двоичном исчислении. Записываем их в десятичном и получаем результат. Кто-то считает по другому r = 4, w = 2, x = 1, а затем просто складывает. Хотя, по-моему по-админски, это считать в двоичном исчислении.

Затем эти числа можно использовать в команде chmod, которая присваивает файлу нужные полномочия. Например, 
 # chmod 660 ./log_g11m2.dbf 
Теперь, к делу. При использовании системы SAP в связке с базой данных Oracle в Unix-подобной операционной системе на ряд директорий и файлов, которые составляют в совокупности экземпляр (инстанцию) базы данных, необходимо установить и поддерживать правильный набор полномочий. Корректные полномочия обеспечивают базовый уровень безопасности системы и бесперебойную работу системы и утилит BR*Tools, про которые я рассказывал в постах: "Утилиты для администрирования ORACLE в SAP. Часть I" и "Утилиты для администрирования ORACLE в SAP. Часть II". Итак, памятка по полномочиям:

Рис. 2. Полномочия на директории Oracle в Unix.

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

14 августа 2017 г.

Как работать с SAP notes - I

Один из важных разделов на портале поддержки систем SAP (SAP Support Portal) это база SAP notes (SAP нот). Перевести это понятие на русский язык сложно, это комментарий, заметка или письмо от компании SAP.

Все SAP notes можно разделить на 3 типа:
  • информативные SAP notes: это небольшие комментарии или статьи, описывающие новые функциональности, разъясняющие технические моменты системы или приводящие рекомендации. Например, в посте "Обновление SAP GUI for Windows и SAP GUI for Java" я приводил ссылку на SAP note # 1053737 - Expected release dates for SAP GUI for Windows, которая является примером SAP note такого типа и содержит график выхода обновлений для SAP GUI. 
  • SAP notes, содержащие ручные шаги по настройке системы: такие SAP notes описывают шаги, которые должен выполнить консультант для настройки той или иной функциональности или активации возможностей системы. Примером может служить SAP note # 2055935 - Russia: End of permanent daylight saving time and start of permanent standard time in 2014, которую я упоминал в посте "Переход на зимнее время 26 октября 2014 года". В ней описаны шаги, которые необходимо выполнить в системе, чтобы сменить настройки часового пояса для России.
  • SAP notes, содержащие коррекции программного кода: такие SAP notes, содержат инструкции по внесению изменений в те или иные ABAP-программы или функциональные модули системы. За примером далеко ходить не надо. В предыдущем посте "Дамп в старых системах при работе на больших разрешениях" я приводил 4 ноты, которые содержат исправления кода для решения описанной в статье проблемы. Таких SAP notes порядка 80 %.

10 августа 2017 г.

Дамп в старых системах при работе на больших разрешениях

При работе в старых системах (прежде всего в релизах SAP R/3 4.6C и SAP R/3 4.7 Enterprise) возникает проблема при работе на больших экранах с большим разрешением, особенно при переводе окна SAP GUI в полноэкранный режим. Система выпадает в дамп WRITE_TO_OFFSET_TOOLARGE в программе SAPMKCBE (рис. 1).

Рис. 1. Пример дампа WRITE_TO_OFFSET_TOOLARGE в системе версии 4.6C.

Решением является установка 4 SAP нот:
- SAP note 682987 - Short dump WRITE_TO_OFFSET_TOOLARGE in SAPMKCBE
(содержится в пакете поддержки для SAP_APPL - SAPKH46C47 (релиз 46С) и SAPKH47018 (релиз 470)),
- SAP note 756869 - Short dump WRITE_TO_OFFSET_TOOLARGE in SAPMKCBE (2)
(содержится в пакете поддержки для SAP_APPL - SAPKH46C48 (46С) и SAPKH47022 (470), затрагивает и релиз 500 - SAPKH50003),
- SAP note 796898 - Short dump WRITE_TO_OFFSET_TOOLARGE in SAPMKCBE (3)
(содержится в пакете поддержки для SAP_APPL - SAPKH46C49 (46С), SAPKH47023 (470), в релизе 500 - SAPKH50006),
- SAP note 1144093 - Short dump WRITE_TO_OFFSET_TOOLARGE in SAPMKCBE (4)
(содержится в пакете поддержки для SAP_APPL - SAPKH47030 (релиз 470), SAPKH50019 (релиз 500), SAPKH60013 (релиз 600), SAPKH60203 (релиз 602), SAPKH60302 (релиз 603)).

В скобках указаны пакеты поддержки для релизов, при наличии которых в системе, ноту ставить нет необходимости. Таким образом, для версии SAP R/3 4.6C, например, последнюю ноту надо ставить даже, если у вас установлены все пакеты поддержки, так как она выпущена после окончания поддержки этой системы.

Ноты не делают ничего кардинального: вставляют в ряд программ проверку на длину переменной, ограничивая её 255 символами в случае превышения. Но после этого система в данный дамп не падает.


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


7 августа 2017 г.

Саповские секретики - III


Секретик 1.

Для того, чтобы в транзакциях SE09/SE01/SE10 быстро открыть запрос, зная его номер, достаточно выбрать пункт меню "Запрос/задача -> Просмотр по отдельности..." или просто нажать функциональную клавишу F5 на клавиатуре (рис. 1).

Рис. 1. Просмотр транспортного запроса по отдельности.

В появившемся диалоговом окне ввести номер запроса и перейти в просмотр его содержимого (рис. 2 и 3).

Рис. 2. Ввод номера запроса для просмотра.

Рис. 3. Просмотр запроса по отдельности.

Знание "горячих клавиш" в часто-используемых транзакциях облегчает и ускоряет выполнение производственных задач. :)


Секретик 2.

Помните, я рассказывал как перенести содержимое таблицы между системами. Для включения записей в транспортный запрос необходимо было добавить объект типа TABU, означающий содержимое таблицы, в запрос. Иногда бывает необходимо включить объекты одного транспортного запроса в другой.  Для этого необходимо в транзакции SE01/SE10/SE09 создать новый или открыть существующий целевой запрос (можно способом из первого секретика). Курсор мыши установить на запрос, а в меню выбрать пункт "Запрос/задача -> Список объектов -> Включить объекты..." (рис. 4).

Рис. 4. Включение объектов в текущий запрос.

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

Рис. 5. Включение объектов транспортного запроса в другой запрос.

Здесь стоит помнить, что включить объекты можно только в запрос, который еще не деблокирован, то есть открыт на изменения. А вот на запрос-источник объектов ограничений нет: он может быть как деблокирован, так и открыт на изменения.


Секретик 3.

В посте "Запись каталога объекта: изменение системы оригинала" я писал, что система оригинала для объекта является защитным механизмом для его перезаписи из другой системы. Но иногда необходимо перенести объект из системы не оригинала в другую. Например, восстановить объект в системе разработки из системы контроля качества. В этом случае можно не менять систему оригинала для объекта, как это было описано в посте, а включить объект в запрос типа "Перенос копий". Создать такой запрос можно в транзакции SE09/SE01/SE10 (рис. 6).

Рис. 6. Создание запроса для переноса объектов из системы не оригинала.

После этого включить в запрос объекты, указать целевую систему и деблокировать.

Если попробовать перенести такие объекты в обычном транспортном запросе (типа инструментальных средств), в противоток основным потокам транспортной системы, то система выдаст ошибку при попытке деблокировать запрос. А запроса типа "Перенос копий" поможет решить эту проблему.

Предыдущие выпуски:
- Саповские секретики - I,
- Саповские секретики - II.


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


3 августа 2017 г.

Двухуровневая концепция доменов в SAP AS ABAP

Как я уже не раз упоминал, на уровне сервера приложений AS ABAP ведется централизованный ABAP-словарь. Это обеспечивает платформо-независимость SAP системы от используемой базы данных. О соответствии ABAP-словаря словарю базы данных я писал в посте "Транзакция SE14: утилита базы данных". 

В ABAP-словаре на низшем уровне выделяют такое понятие, как домен. Домен это техническое описание единицы данных, в котором указывается тип и размерность данных, атрибуты вывода и, если необходимо, список значений. Например, домен MANDT, определяющий мандант системы, имеет тип CLNT с длиной 3 символа (рис. 1).

Рис. 1. Описание домена MANDT.

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

Рис. 2. Описание элемента данных MANDT.

Рис. 3. Семантическое описание элемента данных MANDT.

В дальнейшем элемент данных можно использовать для описания поля таблицы. Например, T000, содержащей записи о мандантах SAP системы (рис. 4).

Рис. 4. Список полей таблицы T000.

Информацию по доменам, элементам данных или полям таблицы можно посмотреть через транзакцию SE11 (рис. 5).

Рис. 5. Просмотр информации по элементам ABAP-словаря в транзакции SE11.

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

Подробности в курсе "BC430 - ABAP Dictionary".


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