Сап ерп программа что это

Сравнение SAP ERP и 1C:ERP

В марте 2022 года, когда немецкий вендор – компания SAP SE заявила об уходе из России, отечественные пользователи SAP ERP задумались над сменой зарубежного ПО. А в апреле, когда стало известно, что SAP SE собирается прекратить поддержку действующих в России лицензий, бизнес вынужденно встал перед выбором альтернативной корпоративной информационной системы. Главные критерии – программа должна быть отечественной и надежной. Такому запросу отвечает продукт компании 1С – 1С: ERP. В этой статье сравним зарубежную и российскую системы класса ERP.

Фирма «1С» – российский лидер в сфере корпоративных систем. С 2005 года флагманским продуктом компании для корпоративного сектора была программа «1С:Управление производственным предприятием», которая хоть и покрывала требования крупного бизнеса, однако проигрывала зарубежным аналогам по количеству автоматизируемых рабочих мест. В 2013 году, с учетом потребностей крупных компаний и накопленного почти 10-тилетнего опыта, фирма «1С» выпустила систему 1С:ERP, которая не уступает заграничным информационным системам по всем критериям, а в некоторых аспектах даже превосходит аналоги.

Функциональность

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

· за учет финансов и бюджетирование в SAP ERP отвечает модуль «Финансы», в 1С:ERP – модуль «Управление финансами и бюджетирование»;
· управление персоналом (HR): в SAP ERP – модуль «Управление персоналом», в 1С:ERP – модуль «Управление персоналом и расчет заработной платы»;
· управление закупками: в SAP ERP – модуль «Управление материальными потоками», в 1С:ERP – модуль «Управление закупками»;
· управление продажами: в SAP ERP – модуль «SAP Sales and Distribution (SD)», в 1С:ERP – модуль «Управление продажами»;
· складской учет: в SAP ERP – модуль «Управление материальными потоками», в 1С:ERP – модуль «Управление складом и запасами»;
· производственный учет: в SAP ERP – модуль «Производственное планирование», в 1С:ERP – модуль «Управление производством»;
· CRM: в SAP ERP – модуль «SAP CRM», в 1С:ERP – модуль «Управление взаимоотношениями с клиентами (CRM)»;
· учет основных средств: в SAP ERP – модуль «Управление основными средствами», в 1С:ERP – модули «Регламентированный учет» и «Управление затратами и расчет себестоимости».

Стоит обратить внимание, что, например, в SAP ERP модуль «Управление материальными потоками» отвечает и за управление закупками, и за складской учет, а в 1С:ERP, напротив, за учет основных средств, в противовес зарубежной системе, отвечает два модуля. Все это объясняется следующим важным критерием, который отличает ERP-системы.

Локализация и соответствие российскому законодательству

Система SAP ERP в первую очередь ориентирована на европейские принципы учета и стандарты ведения бизнеса. Зарубежная система адаптируется под законодательство страны присутствия, а особенности функционирования предприятий не берутся в расчет. Система 1С:ERP как отечественная разработка полностью соответствует российским бизнес-реалиям и подходам к управлению предприятием, чутко и оперативно реагирует на малейшие изменения в законодательстве. В системе заложены все необходимые формы отчетности, которые разработаны в соответствии с требованиями закона и регуляторов.

Сервисное обслуживание

Одновременно следствие и причина предыдущего критерия – это частота обновлений систем. SAP ERP обновляется 1-2 раза в год, соответственно масштабно. Для 1С:ERP обновления выходят достаточно часто – 1-2 раза в месяц, что позволяет модернизировать систему небольшими частями, поддерживая актуальность соответствия всем законодательным нормам, не нагружая и тем более не парализуя работу бизнеса.

Поддержка систем организована по единым для всей IT-сферы принципам: консультации и доработки делают профильные специалисты. Однако фирма «1С» имеет обширную партнерскую сеть – найти профессионалов, которые смогут оказать услуги по поддержанию системы, не составит труда. Форматы «горячей линии», онлайн-поддержки значительно облегчают работу сотрудников предприятия, гарантируя своевременное получение ответов на возникающие вопросы. Поддержку SAP ERP оказывает лишь небольшое число официальных представителей компании. Цена за услуги тоже разнится – стоимость работы консультанта SAP зачастую в разы выше.

Гибкость настроек

ERP-системы предполагают, что базовый функционал всегда можно адаптировать под нужды конкретного предприятия. Кастомизация SAP ERP требует участия высококвалифицированного специалиста-программиста, стоимость услуг которого на рынке России не только высока, но и наличие таких профессионалов представляет определённый дефицит. Кроме того, в свете ухода SAP SE с российского рынка, специалисты будут чаще работать на зарубежные компании. Доступность специалистов 1С и объемы кастомизации при этом у российской ERP-системы существенно выше.

Удобство использования

Визуально обе системы обладают достаточно дружелюбным интерфейсом, и обновления поддерживают преемственность. Однако в SAP ERP есть несколько особенностей взаимодействия с продуктом. Самое первое – это иерархическое меню, использовать которое может быть не совсем удобно. Как альтернатива есть командная строка для поиска нужных форм, но сам поиск работает только по кодам, поиск по наименованию не предусмотрен.

Ориентир на зарубежный бизнес накладывает свой отпечаток и на терминологию, которая используется в SAP ERP. Например, «контировка» – это добавление аналитических признаков, а не проводка, как это прописано в российском бухучете, а «фавориты» – это привычное для российского пользователя «избранное». К специфическим терминам в SAP нужно привыкать. А вместе с обновлениями они могут меняться. В 1С:ERP все понятно и привычно, адаптировано под российский менталитет и понятно интуитивно.

Стоимость и сроки внедрения

Стоимость внедрения 1С:ERP прозрачная, понятна и обнародована. Найти эту информацию можно в открытых источниках – на сайтах самой фирмы «1С» и компаний-франчайзи. Понять, сколько будет стоить лицензия и дальнейшая поддержка SAP ERP стоит труда – информацией владеют только представители немецкого вендора и в открытом доступе ее не найти. Тем не менее, 1С безоговорочно выигрывает в стоимости приобретения и сопровождения.

Внедрение SAP ERP, по оценкам специалистов, занимает от года до 5 лет. В силу архитектуры запустить систему постепенно невозможно, что откладывает модернизацию бизнес-процессов до полного окончания внедрения. Систему 1С:ERP можно внедрять поэтапно, при этом уже в процессе внедрения начинать использовать новые возможности и постепенно наращивать объемы автоматизации. В среднем полная реализация проекта занимает около 9 месяцев.

Компания «КомЛайн» на протяжении 20 лет занимается комплексной автоматизацией предприятий различного масштаба и сфер деятельности. Наши специалисты всегда готовы подобрать наиболее подходящую конфигурацию ERP-системы, которая будет соответствовать требованиям Вашего бизнеса.

Нужна помощь или возникли дополнительные вопросы? Свяжитесь с нами любым удобным способом или оставьте заявку на обратный звонок. Всегда рады сотрудничеству!

Источник: 1ccl.ru

Сап ерп программа что это

Основной целью внедрения линейки продуктов немецкой компании SAP AG является совершенствование стратегии управления предприятием. Одним из ключевых программных решений в построении единой интегрированной платформы для ведения бизнеса служит ERP система SAP R/3.

Методология внедрения ERP на предприятии

Модули

MM – управление материальными потоками.

PP – управление производством.

PS – система проектов.

IM – инвестиционный менеджмент.

HR – управление сотрудниками.

BC – базисные компоненты.

CA – компоненты общие для всех компонентов.

Три уровня системы

Манданты

Мандант – это организационно независимая часть в системе R/3. Каждый мандант имеет собственную среду данных, т.е. собственные основные и переменные данные, присвоенные основные записи пользователей, планы счетов и специфические параметры настройки. Номер манданта находится в диапазоне от 000 до 999. Кроме параметров настройки для определенного манданта существуют также мандантонезависимые настройки, устанавливаемые один раз для всех активных мандантов.

Трехсистемный ландшафт

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

Транспортная система – система переноса программ и настроек между модулями.

Организация переноса:

Запрос на перенос → Деблокирование → Перенос

1 – система разработки. Содержит 3 манданта (номера можно использовать другие).

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

– 400 – менять в нем ничего нельзя. Используется для предварительного грубого тестирования программ и настроек.

– 200 – песочница (Sandbox). Предназначен для экспериментирования с настройками. Запросы на перенос из песочницы не формируются.

2 – Система контроля качества. Содержит обычно два манданта:

– 500 – используется для обучения пользователей

– 600 – предназначен для проверки корректности разработки или настройки.

Настройка или разработка может попадать в эту систему после деблокирования.

3 – Продуктивная система. Обычно один мандант, в котором работают пользователи.

Источник: execution.su

Взгляд IT-специалиста на SAP ERP 12.11.2015 12:33

e200016e07a14348b603c6ca351e45a5.png

В этой статье я не буду рассказывать о плюсах и сильных сторонах этой системы с точки зрения функциональности – пусть этим занимаются маркетологи. Я, как IT-специалист, хочу поделиться с вами своими впечатлениями о реализации этого продукта.

Читайте также:
Msi mystic light что это за программа

Статья будет полезна в первую очередь тем, кто планирует начать работать с SAP ERP как в качестве IT-специалиста (консультанта/программиста), так и в качестве конечного пользователя.

Бывают такие интерфейсы, на которые смотришь и сразу становится понятно, куда нужно нажать, чтобы выполнить то или иное действие. Так вот…это не про SAP. Первый раз, когда я увидел стартовый экран SAP, подумал, что это просто очень-очень старая версия, которую я как-то случайно запустил. Ан нет, это была вполне современная версия. Интерфейс разрабатывали где-то в 90-х, там он и остался до сих пор.

Для работы с системой нужно запускать так называемые транзакции (к транзакциям БД они отношения не имеют). Транзакция SAP – это что-то типа «ярлыка» для вызова программы, с помощью которой можно выполнить какое-то действие в системе (например, просмотреть список заказов на поставку или отредактировать какой-либо документ).

Имена у транзакций абсолютно ничего неговорящие (ME21, IW33, MIRO…). Запустить транзакцию можно двумя способами: из древовидного меню слева или введя код транзакции в специальное поле. В меню можно заблудиться, поэтому чаще всего транзакции запускаются путем ввода её кода. Поэтому у каждого пользователя есть блокнотик, в котором все эти коды записаны.

888a6c5256f6473aac4d5cb005b88048.png

Стартовый экран SAP ERP

Запускаю я, значит, транзакцию для просмотра списка объектов ремонта, кое-как заполняю селекционный экран, жму «Выполнить» и получаю…дамп (так в SAP называется критическая ошибка, прерывающая выполнение программы без возможности продолжить её работу).

9fb403cdb26f411dae6216e299986341.png

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

Это я сейчас знаю, что нельзя передавать слишком много значений в поля селекционного экрана, так как SQL-запрос превышает какой-то там допустимый размер в килобайтах и из-за этого программа прерывается с исключением DBIF_RSQL_INVALID_RSQL. Причем, нет никакой конкретной цифры, всё зависит от длины передаваемых значений, но экспериментальным путем получена цифра равная примерно 1500-1800 значений. Но как всё это объяснить пользователю? Как объяснить, что он должен 4 раза запустить транзакцию, если ему хочется получить отфильтрованный по 5000 значений список. К тому же, в одних транзакциях нет никаких ограничений, а в других есть.

Матерюсь, перезапускаю транзакцию, заново заполняю селекционный экран, уменьшив объем входных данных, и, наконец, подождав 15 минут, получаю список объектов. Выделяю нужную мне строку списка и отчаянно пытаюсь найти кнопку «Редактировать». Ага, размечтался.

Для редактирования, оказывается, существует отдельная транзакция, в которую я, в большинстве случаев, не могу попасть из транзакции просмотра списка объектов. Мне надо скопировать системный номер нужного мне объекта из списка, запустить отдельное окно SAP (которое называется режимом), открыть там транзакцию для редактирования объекта и вставить туда скопированный номер. Таких режимов я могу открыть по умолчанию не более шести. Если все 6 уже открыты, а мне надо отредактировать объект, то придется каким-то режимом пожертвовать. Для просмотра, создания и даже удаления объекта тоже существуют отдельные транзакции.

Еще ситуация. Открываю я транзакцию «MIRO – создание входящего счета-фактуры», долго заполняю шапку, указываю системный номер документа входящей поставки, на основании которого автоматически заполняется позициями табличная часть счета-фактуры. Из тысячи позиций мне нужно было 100 удалить. Я нахожу эти позиции, долго выделяю их и жму кнопку «Удалить».

Как думаете, что должно произойти после выделения позиций и нажатия кнопки «Удалить»? Вот я тоже так же подумал. А разработчики SAP думали как-то по-другому – удалилось 900 невыделенных позиций. «Ладно», — подумал я, — «сейчас нажму CTRL+Z и все верну назад». Ну, вы поняли уже, да? Отменить это действие нельзя, поэтому пришлось перезапускать транзакцию и заново забивать все данные.

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

Сообщения об ошибках не несут вообще никакой смысловой нагрузки. Вот что может означать ошибка «Код налога V0 еще существует»? Сначала я подумал, что это какой-то кривой перевод, но английский вариант «Tax code V0 also exist» и немецкий «Es existiert noch das Steuerkennzeichen V0» тоже неинформативны. А означает она то, что код налога в табличной части не совпадает с кодом налога в шапке.

Часто на профильных форумах можно найти темы «У меня такая-то ошибка. Что она означает?», в которых люди играют в угадайку, пока тот, кто уже наступил на грабли, не даст ответ.

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

Даже горячие клавиши в разных транзакциях для одних и тех же действий отличаются. И это касается не только кнопок, но и табличных частей, вкладок и т.д. – единства нет, везде всё по-разному. Видно, что каждый разработчик лепил интерфейс, как ему вздумается, и никакого контроля за этим не велось. Дизайнеров в команде не было. Похоже, это из-за того, что в момент разработки особо серьезных конкурентов на рынке не наблюдалось, поэтому решили, что нужно развивать функциональность, а интерфейс пользователи «проглотят» любой.

f1dedf682fe44726a29ab93d4ee52b46.png

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

В последнее время в SAP поняли, что сели попой в лужу с приходом эффективных менеджеров, избалованных айфонами и выбирающих софт по внешнему виду, нужно что-то менять в интерфейсе. Тем более, конкуренты уже давно подтянулись по функциональности. Поэтому SAP пытается делать какие-то шаги в этом направлении и создает взамен старых транзакций новые, которые называются enjoy-транзакции. Появляются какие-то новые темы оформление с кнопками в стиле Android, но пока, как говорится, «сколько на осла бантиков не вешай…».

Рассказывать о прелестях интерфейса можно бесконечно, но давайте пойдём дальше…

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

Почему переводили в Magic Gooddy? Потому что не может человек перевести пункт настроек «Country-specific requirements» как «Страновые требования».

1518664281ee436c8479a9a084e68fdb.png

Почему перепечатывали вручную? Потому что встречаются опечатки и грамматические ошибки. Например, «Щапрос на перенос», «налогооблАжение» и «вниматИльно» явно печатали руками. Встречаются также сокращения слов, чтобы не выходить за рамки допустимой длины текста.

a30b5f926dfc423181485e3c75ced48f.png

Почему люди не понимали русский язык? Потому что даже при перепечатывании русскоговорящий человек должен был усомниться, увидев фразу «Пушномолочная свинья-несушка» — так до определенного времени называлась программа RAIMEWMS (сейчас название уже исправили). В оригинале она называется «Eierlegende Wollmilchsau», что переводится как «Мастер на все руки», но умный Magic Gooddy посчитал, что Wollmilchsau – это 3 отдельных слова (Woll, milch, sau) и перевел фразу «Eierlegende Woll milch sau» как «Яйцо укладки шерсти молока свиноматки». Остается только гадать, как это потом превратилось в «Пушномолочная свинья-несушка».

24da15591fbf4178b3942dc4b73f0f5c.png

Да-да, я всё ещё рассказываю о том самом SAP ERP, лицензии которого стоят много тысяч долларов и за внедрение которого организации выкладывают сотни миллионов рублей.

В открытом доступе нет практически никакой официальной справочной информации. Нет ни руководств пользователя, ни описания программных модулей, ни спецификаций. Хочешь научиться пользоваться SAP – добро пожаловать на малоэффективные курсы (3-5 дней) стоимостью 1500-2000$ каждый, где тебе расскажут, какую кнопку нажать. Раздаточный материал на этих курсах зачастую на английском языке.

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

Большая часть знаний консультантов и разработчиков либо передается по наследству от старшего поколения к младшему, либо получается методом «тыка». Если повезет, то можно что-то найти на профильных форумах и в частных блогах, если нет – ковыряйся сам, отладчик тебе в помощь.

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

Читайте также:
Лента виджетов что это за программа на Андроид Xiaomi

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

Например, принести яйцо дракона из пещеры на вершине горы. Утрирую, конечно, но порой установить ноты, исправляющие ошибки, тяжелее, чем самому эти ошибки исправить. Недавно на Гиктаймс была статья, в которой говорилось о том, что люди через чат Arch Linux устанавливали. Так вот, некоторые ноты (особенно связанные с изменением функциональности под законодательство) устанавливаются так же: люди на форуме коллективно пытаются пройти квест (так, а теперь давайте нажмем все вместе на счет три вот эту кнопку…). Причем, ноты устанавливаются в нескольких системах с одинаковой версией и везде возникают разные ошибки.

Разработка в SAP ERP осуществляется на языке ABAP. Для обращения к базе данных используются Open SQL-запросы, которые очень похожи на SQL-запросы. Синтаксис тут обсуждать не буду – субъективная вещь. Он мне не нравится, но привык к нему быстро.

Названия таблиц, полей и переменных, как и названия транзакций, никакого смысла в себе не несут. Глядя на Open SQL-запрос SELECT, невозможно даже близко догадаться, что за данные он выбирает из базы. Нужно либо заранее знать, что хранится в обрабатываемой таблице, либо по ходу действия в эту таблицу лезть через браузер данных и пытаться понять, что в ней.

d6a98820d45843d49e474f2ae3acfcfc.png

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

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

Это то же самое, что USER-EXIT, только объектно-ориентированное. Зачем оно появилось и почему, раз уж оно появилось, не отказались от USER-EXIT – мне непонятно, только лишней путаницы добавилось.

Так как никакой официальной документации по USER-EXIT и BADI нет, то, чтобы найти подходящее место, куда можно дописать свой код, нужно либо сидеть в отладчике в поисках этих пустых функций, либо штудировать форумы в надежде, что кто-то уже сталкивался с такой необходимостью. Часто бывает, что для одной и той же задачи подходят разные USER-EXIT и BADI. Из-за этого случается так, что на одном проекте разные разработчики/консультанты выбирают различные USER-EXIT/BADI, и код, который должен бы логически быть в одном месте, разбросан по нескольким местам.

Хочется еще упомянуть про отладчик. Их два: старый и новый. В старом отладчике есть функции, которых нет в новом, а в новом есть функции, которых нет в старом. Например, в старом отладчике есть функция просмотра ABAP Memory и SAP Memory, в новом – нет. Переключаться между старым и новым можно прямо в процессе отладки. Хотя слово «новый» тут не очень уместно, так как он существует уже почти 10 лет.

Почему за это время его не доработали и не избавились от старого – загадка.

e5787562417e4935839bae95905af6e2.png

Складывается впечатление, что этот продукт делали какие-то другие немцы: не те, что делают BMW, Mercedes и AUDI. Процесс разработки какой-то совершенно бесконтрольный: в коде огромное множество ошибок, которые могут годами не исправляться; каждый разработчик называет переменные, как ему вздумается; обновления кривые; новые инструменты появляются недоработанными и такими остаются, пока не станут старыми; …продолжать можно долго.

Тем не менее, я не хочу, чтобы моя статья выглядела как обливание SAP грязью. У любого продукта есть плюсы и минусы. На каждый мой абзац можно написать такой же о плюсах SAP ERP и я соглашусь с ними. Но мне хочется, чтобы люди, решившие связать свою работу с SAP ERP, знали чуточку больше, чем «SAP ERP – это такая крутая немецкая программа, которая стоит много денег».

Источник: pcnews.ru

Взгляд IT-специалиста на SAP ERP

В этой статье я не буду рассказывать о плюсах и сильных сторонах этой системы с точки зрения функциональности – пусть этим занимаются маркетологи. Я, как IT-специалист, хочу поделиться с вами своими впечатлениями о реализации этого продукта.

Статья будет полезна в первую очередь тем, кто планирует начать работать с SAP ERP как в качестве IT-специалиста (консультанта/программиста), так и в качестве конечного пользователя.

Интуитивно-понятный интерфейс

Бывают такие интерфейсы, на которые смотришь и сразу становится понятно, куда нужно нажать, чтобы выполнить то или иное действие. Так вот…это не про SAP. Первый раз, когда я увидел стартовый экран SAP, подумал, что это просто очень-очень старая версия, которую я как-то случайно запустил. Ан нет, это была вполне современная версия. Интерфейс разрабатывали где-то в 90-х, там он и остался до сих пор.

Для работы с системой нужно запускать так называемые транзакции (к транзакциям БД они отношения не имеют). Транзакция SAP – это что-то типа «ярлыка» для вызова программы, с помощью которой можно выполнить какое-то действие в системе (например, просмотреть список заказов на поставку или отредактировать какой-либо документ).

Имена у транзакций абсолютно ничего неговорящие (ME21, IW33, MIRO…). Запустить транзакцию можно двумя способами: из древовидного меню слева или введя код транзакции в специальное поле. В меню можно заблудиться, поэтому чаще всего транзакции запускаются путем ввода её кода. Поэтому у каждого пользователя есть блокнотик, в котором все эти коды записаны.

Стартовый экран SAP ERP

Запускаю я, значит, транзакцию для просмотра списка объектов ремонта, кое-как заполняю селекционный экран, жму «Выполнить» и получаю…дамп (так в SAP называется критическая ошибка, прерывающая выполнение программы без возможности продолжить её работу).

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

Это я сейчас знаю, что нельзя передавать слишком много значений в поля селекционного экрана, так как SQL-запрос превышает какой-то там допустимый размер в килобайтах и из-за этого программа прерывается с исключением DBIF_RSQL_INVALID_RSQL. Причем, нет никакой конкретной цифры, всё зависит от длины передаваемых значений, но экспериментальным путем получена цифра равная примерно 1500-1800 значений. Но как всё это объяснить пользователю? Как объяснить, что он должен 4 раза запустить транзакцию, если ему хочется получить отфильтрованный по 5000 значений список. К тому же, в одних транзакциях нет никаких ограничений, а в других есть.

Матерюсь, перезапускаю транзакцию, заново заполняю селекционный экран, уменьшив объем входных данных, и, наконец, подождав 15 минут, получаю список объектов. Выделяю нужную мне строку списка и отчаянно пытаюсь найти кнопку «Редактировать». Ага, размечтался.

Для редактирования, оказывается, существует отдельная транзакция, в которую я, в большинстве случаев, не могу попасть из транзакции просмотра списка объектов. Мне надо скопировать системный номер нужного мне объекта из списка, запустить отдельное окно SAP (которое называется режимом), открыть там транзакцию для редактирования объекта и вставить туда скопированный номер. Таких режимов я могу открыть по умолчанию не более шести. Если все 6 уже открыты, а мне надо отредактировать объект, то придется каким-то режимом пожертвовать. Для просмотра, создания и даже удаления объекта тоже существуют отдельные транзакции.

Еще ситуация. Открываю я транзакцию «MIRO – создание входящего счета-фактуры», долго заполняю шапку, указываю системный номер документа входящей поставки, на основании которого автоматически заполняется позициями табличная часть счета-фактуры. Из тысячи позиций мне нужно было 100 удалить. Я нахожу эти позиции, долго выделяю их и жму кнопку «Удалить».

Как думаете, что должно произойти после выделения позиций и нажатия кнопки «Удалить»? Вот я тоже так же подумал. А разработчики SAP думали как-то по-другому – удалилось 900 невыделенных позиций. «Ладно», — подумал я, — «сейчас нажму CTRL+Z и все верну назад». Ну, вы поняли уже, да? Отменить это действие нельзя, поэтому пришлось перезапускать транзакцию и заново забивать все данные.

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

Сообщения об ошибках не несут вообще никакой смысловой нагрузки. Вот что может означать ошибка «Код налога V0 еще существует»? Сначала я подумал, что это какой-то кривой перевод, но английский вариант «Tax code V0 also exist» и немецкий «Es existiert noch das Steuerkennzeichen V0» тоже неинформативны. А означает она то, что код налога в табличной части не совпадает с кодом налога в шапке.

Часто на профильных форумах можно найти темы «У меня такая-то ошибка. Что она означает?», в которых люди играют в угадайку, пока тот, кто уже наступил на грабли, не даст ответ.

Читайте также:
Openoffice org writer что это за программа

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

И это касается не только кнопок, но и табличных частей, вкладок и т.д. – единства нет, везде всё по-разному. Видно, что каждый разработчик лепил интерфейс, как ему вздумается, и никакого контроля за этим не велось. Дизайнеров в команде не было. Похоже, это из-за того, что в момент разработки особо серьезных конкурентов на рынке не наблюдалось, поэтому решили, что нужно развивать функциональность, а интерфейс пользователи «проглотят» любой.

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

В последнее время в SAP поняли, что сели попой в лужу с приходом эффективных менеджеров, избалованных айфонами и выбирающих софт по внешнему виду, нужно что-то менять в интерфейсе. Тем более, конкуренты уже давно подтянулись по функциональности. Поэтому SAP пытается делать какие-то шаги в этом направлении и создает взамен старых транзакций новые, которые называются enjoy-транзакции. Появляются какие-то новые темы оформление с кнопками в стиле Android, но пока, как говорится, «сколько на осла бантиков не вешай…».

Рассказывать о прелестях интерфейса можно бесконечно, но давайте пойдём дальше…

Локализация

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

Почему переводили в Magic Gooddy? Потому что не может человек перевести пункт настроек «Country-specific requirements» как «Страновые требования».

Почему перепечатывали вручную? Потому что встречаются опечатки и грамматические ошибки. Например, «Щапрос на перенос», «налогооблАжение» и «вниматИльно» явно печатали руками. Встречаются также сокращения слов, чтобы не выходить за рамки допустимой длины текста.

Почему люди не понимали русский язык? Потому что даже при перепечатывании русскоговорящий человек должен был усомниться, увидев фразу «Пушномолочная свинья-несушка» — так до определенного времени называлась программа RAIMEWMS (сейчас название уже исправили). В оригинале она называется «Eierlegende Wollmilchsau», что переводится как «Мастер на все руки», но умный Magic Gooddy посчитал, что Wollmilchsau – это 3 отдельных слова (Woll, milch, sau) и перевел фразу «Eierlegende Woll milch sau» как «Яйцо укладки шерсти молока свиноматки». Остается только гадать, как это потом превратилось в «Пушномолочная свинья-несушка».

Да-да, я всё ещё рассказываю о том самом SAP ERP, лицензии которого стоят много тысяч долларов и за внедрение которого организации выкладывают сотни миллионов рублей.

Справочная информация, литература

В открытом доступе нет практически никакой официальной справочной информации. Нет ни руководств пользователя, ни описания программных модулей, ни спецификаций. Хочешь научиться пользоваться SAP – добро пожаловать на малоэффективные курсы (3-5 дней) стоимостью 1500-2000$ каждый, где тебе расскажут, какую кнопку нажать. Раздаточный материал на этих курсах зачастую на английском языке.

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

Большая часть знаний консультантов и разработчиков либо передается по наследству от старшего поколения к младшему, либо получается методом «тыка». Если повезет, то можно что-то найти на профильных форумах и в частных блогах, если нет – ковыряйся сам, отладчик тебе в помощь.

Обновления и патчи

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

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

Например, принести яйцо дракона из пещеры на вершине горы. Утрирую, конечно, но порой установить ноты, исправляющие ошибки, тяжелее, чем самому эти ошибки исправить. Недавно на Гиктаймс была статья, в которой говорилось о том, что люди через чат Arch Linux устанавливали. Так вот, некоторые ноты (особенно связанные с изменением функциональности под законодательство) устанавливаются так же: люди на форуме коллективно пытаются пройти квест (так, а теперь давайте нажмем все вместе на счет три вот эту кнопку…). Причем, ноты устанавливаются в нескольких системах с одинаковой версией и везде возникают разные ошибки.

Разработка

Разработка в SAP ERP осуществляется на языке ABAP. Для обращения к базе данных используются Open SQL-запросы, которые очень похожи на SQL-запросы. Синтаксис тут обсуждать не буду – субъективная вещь. Он мне не нравится, но привык к нему быстро.

Названия таблиц, полей и переменных, как и названия транзакций, никакого смысла в себе не несут. Глядя на Open SQL-запрос SELECT, невозможно даже близко догадаться, что за данные он выбирает из базы. Нужно либо заранее знать, что хранится в обрабатываемой таблице, либо по ходу действия в эту таблицу лезть через браузер данных и пытаться понять, что в ней.

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

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

Это то же самое, что USER-EXIT, только объектно-ориентированное. Зачем оно появилось и почему, раз уж оно появилось, не отказались от USER-EXIT – мне непонятно, только лишней путаницы добавилось.

Так как никакой официальной документации по USER-EXIT и BADI нет, то, чтобы найти подходящее место, куда можно дописать свой код, нужно либо сидеть в отладчике в поисках этих пустых функций, либо штудировать форумы в надежде, что кто-то уже сталкивался с такой необходимостью. Часто бывает, что для одной и той же задачи подходят разные USER-EXIT и BADI. Из-за этого случается так, что на одном проекте разные разработчики/консультанты выбирают различные USER-EXIT/BADI, и код, который должен бы логически быть в одном месте, разбросан по нескольким местам.

Хочется еще упомянуть про отладчик. Их два: старый и новый. В старом отладчике есть функции, которых нет в новом, а в новом есть функции, которых нет в старом. Например, в старом отладчике есть функция просмотра ABAP Memory и SAP Memory, в новом – нет. Переключаться между старым и новым можно прямо в процессе отладки. Хотя слово «новый» тут не очень уместно, так как он существует уже почти 10 лет.

Почему за это время его не доработали и не избавились от старого – загадка.

Заключение

Складывается впечатление, что этот продукт делали какие-то другие немцы: не те, что делают BMW, Mercedes и AUDI. Процесс разработки какой-то совершенно бесконтрольный: в коде огромное множество ошибок, которые могут годами не исправляться; каждый разработчик называет переменные, как ему вздумается; обновления кривые; новые инструменты появляются недоработанными и такими остаются, пока не станут старыми; …продолжать можно долго.

Тем не менее, я не хочу, чтобы моя статья выглядела как обливание SAP грязью. У любого продукта есть плюсы и минусы. На каждый мой абзац можно написать такой же о плюсах SAP ERP и я соглашусь с ними. Но мне хочется, чтобы люди, решившие связать свою работу с SAP ERP, знали чуточку больше, чем «SAP ERP – это такая крутая немецкая программа, которая стоит много денег».

Источник: savepearlharbor.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru