Привет. Вам наверное уже скучно тут стало. Ничего нового, интересного. Предлагаю настроить модуль управления командировками. Настраивается с полпинка, стоит ноль (не нужна лицензия), умеет печатать красивые авансовые отчеты и нажимать кнопку «согласованто» через Fiori на мобильнике. Рассматривать будем простые ситуации, чтобы вы поняли куда копать, а потом придумаем усложнения.

Начнем с основ настройки командировок. В командировках есть ряд процессов, таких как согласование командировки (заявка на командировку), приобретение билетов, согласование затрат, печать бумажек, создание отсутствий и перерасходов в HR, проводки в FI. Сегодня мы настроим заявку на командировку. Это тот случай, когда очень хочется на Мальдивы, а согласуют только на Сахалинск. Сотрудник открывает САП и запускает процесс — хочу туда-то в командировку, на столько-то дней, делать работу. Руководитель получает сообщение, усиленно думает и согласует. В системе появляется заявка на командировку, согласованная участниками процесса.

Пользовательские транзакции по управлению командировками можно найти в области меню TV00. Запускается как любая транзакция в окне командной строки.

Бежим в SPRO. Настройка командировок почему-то отнсится к области FI, поэтому открываем Financial Accounting — Travel Management. Сначала создадим диапазоны номеров для командировок. Открываем Set Up Trip Number Ranges, и создаем один внутренний диапазон для каждого раздела персонала.

Для того, чтобы настроить заявку на командировку, нам нужно задать основные параметры системы, наполнить справочники. Это все выполняется в разделе Travel Planning.

Для начала было бы неплохо посмотреть, а что вообще есть в стандарте? Зачастую там все уже настроено, надо только посмотреть и подкрутить. Для этого я обычно иду в транзакцию PFCG и по ключевым словам ищу подходящую по смыслу роль. Затем присваиваю ее себе и запускаю транзакции из нее. Это дает мне первое представление о том, что же есть в решении (или какие ошибки не дают посмотреть стандарт).

Так и здесь, я открыл PFCG и поискал роли по маске *TRAVEL*. Увидел много интересного, но себе присвоил SAP_FI_TV_WEB_ESS_TRAVELER_2. Сгенерировал профиль, пусть пока с ошибками и открыми полномочиями, я же играюсь. Запускаю внутри присвоенной роли Traveler Work Center — обзорный экран. Не забываем, что у нас в системе уже должен быть табельный номер, к нему должен быть присвоен системый логин в инфотипе 0105. Без этого большинство сервисов ESS/MSS не полетят. И вот что мы видим:

traveler_work_center

Уже что-то начинает вырисовываться. Если пощелкать везде, то мы не увидим кнопки создания новой заявки на командировку. Давайте попробуем еще что-нибудь вызвать из меню роли. Например, Create New — Travel Request.

Ошибочка-с. Что-то недодали в настройках командировок.

create_travel_request_error

О чем мне это говорит? Три ошибки. Начнем с наиболее очевидных — не хватает какого-то инфотипа 0017. Создаем. Не дает. Показывает такую же ошибку, что и у нас вторая. Открываем эту табличку в SM30 и находим ветку настройки в SPRO. Ага, это некоторые варианты командировок. Интуитивно все понятно. Копируем международную версию 99 в свою 33. У меня получилось!

create_travel_request_1Пробую записать любые данные и сохранить «на дурачка». Не работает. Пишет, что не может спрогнозировать стоимость командировки: «The estimated travel amounts could not be determined».

Чудеса какие-то. Поиск в гугле результатов не дал. Попробую создать заявку в ERP части в транзакции TRIP. Выдает ошибку, но уже другую.

trip_error_1

Эта ошибка уже проще ищется в сети. Находим, что я не создал интервалы номеров для объектов в управлении командировками. Это легко исправляется в SPRO по пути Travel Management — Set Up Trip Number Ranges. После этого в ERP части заявка создалась. Пойдем проверим через веб.

Работает!

Теперь нам осталось понять, как настроить различные справочники здесь, и, что более интересно, что делать с этой заявкой. Она же куда-то ушла, кто-то с ней что-то должен сделать, и что делать дальше-то? Об этом в следующей серии.

P.S. Как вы успели догадаться, это начало второй книги 😉