Архив метки: Workflow

Входящая почта для HR

Здесь я хотел написать много букв про креативные ИТ подходы во многих компаниях мира, где на каждый бизнес-чих бегут покупать новую ИТ систему вместо того, чтобы доработать существующую ERP, и создать интегрированную платформу вместо свалки из систем, интеграционных потоков и так далее. Но не буду. Буду позже, когда совсем накипит.

Сегодня мы делаем мини-контактный центр для HR. У SAP есть стандартное решение SAP Employee Iteraction Center и SAP Shared Service Framework. Второе лучше первого. Но оба стоят денег.

В стандарте SAP нет такой простой штуки, как принять входящее электронное сообщение и отправить его в поток операций, где консультант сможет проанализировать сообщение и выстроить правильную маршрутизацию. Есть кусочные решения для отдельных блоков ALM, SRM, EIC, SOLMAN, еще чего-то.

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

Настройка приема почты в самой системе осуществляется элементарно за 5 минут. Для этого читаем ноту  455140 . Там пара параметров в профиле, перезагрузка системы, настройка в SCOT и все. После этого вы сможете получать почту снаружи для ваших логинов. То есть, можно отправить почту с [email protected] на *@potceluev.com.

Да, не забываем, что для этого ваш САП сервер должен быть прописан в ДНС корпоративной сети. Это уже вне САП.

Существует три способа реализовать нашу задачу.

  • Создать расширение для обработки писем для транзакции SO50 через наследование интерфейса IF_INBOUND_EXIT_BCS BCS: Exit for Inbound Processing
  • Создать BOR объект (SWO1) через наследование интерфейса IFRECEIVE Receive Office objects. Указать его получателем в транзакции SO28
  • Создать программку, которая в фоне будет опрашивать почтовый ящик и обрабатывать письма

Давайте начнем с первого способа. В se24 создаем класс с реализацией интерфейса IF_INBOUND_EXIT_BCS и интерфейса IF_WORKFLOW. Второй нужен для того, чтобы мы могли инициировать с его помощью запуск потока операций с нужным нам событием. Также создаем событие с параметрами SENDER_ADDRESS и BODY_TEXT. Мы будем брать эти два параметра из входящего письма и передавать их в поток операций.

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

Создаем простой поток операций в транзакции SWDD.

Читать далее

Очень хорошая презентация ASUG про события в SAP

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

0811 SAP Workflow and Events Control the Flow

Workflow: массовая рассылка писем счастья

Друзья. <…> вырезано добрым феем. Третья ночь без сна, музыка в ушах, треск в мозгах. Я обожаю SAP 🙂

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

  1. Создать цикл и отправить
  2. Сформировать строчку из множества адресов, разделенных точкой с запятой, и отправить
  3. Использовать списки рассылки

Мы пойдем по самому сложному и непонятному пути, который нигде толком не описан в сети. В SBWP создаем общий список рассылки, примерно вот такой:

distribution_list_1

Читать далее

Workflow

Щепетильная тема, не так ли? Звучная, сложная, манящая, непонятная. Про азы поговорим сейчас, про тонкости — в книге. Workflow или поток операций в простонародии, это инструмент, который позволяет организовать последовательность шагов в единый процесс и контролировать его выполнение. Это неофицильный перевод в моем исполнении. Прелесть потока операций заключается в том, что можно сделать множество путей принятия решений и исполнения потока операций. Если нажал сюда, то случилось это, поэтому надо послать того-то, сохранить запись там-то и написать «всем привет». Если в кадровом мероприятии все прозрачно — сохраняй и заполняй, никакой власти, то в потоках можно настроить практически любые способы взаимодействия пользователя, системы и вселенной.

Представим, что у нас голая система, где еще никто не успел наследить. По умолчанию все отключено, ничего не работает и потоки не гуляют. Надо исправить это в транзакции SWU3. В идеальном мире нам нужно открыть транзакцию, вверх кликнуть на кнопку генерации, и жизнь наладится. Увы. В зависимости от того, какая у вас версия системы, уровень пакетов и прочее, ваш пользователь, под которым вы запускаете эту транзакцию, может принадлежать или нет группе SUPER. В транзакции SU01 надо присвоить текущему пользователю эту группу. Если ее нет, то создать. Это как бы SAP_ALL для админов.

swu3

Читать далее

Настройка HR Process Workbench

Привет.

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

Детально расписывать всю настройку нет смысла, так как она проста. Сначала настраиваем Workflow, так как отдельные элементы процессов его используют. Для этого выполняем все инструкции по ноте Note 133182 — Process Manager: No process is started.  Программа запустилась — система вызывает событие. Программа закончила выполнение — событие. Это позволяет запускать отдельные программы параллельно, а также использовать потоки операций, например, для процедур согласования этапов расчета заработной платы.

Для пользователя работа модели выглядит вот таким симпатичным светофором.

pust_2

Читать далее