Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Тавре ки шумо медонед, SAP маҷмӯи пурраи нармафзорро ҳам барои нигоҳ доштани маълумоти транзаксионӣ ва ҳам барои коркарди ин маълумот дар системаҳои таҳлил ва ҳисобот пешниҳод мекунад. Аз ҷумла, платформаи SAP Business Warehouse (SAP BW) як абзорест барои нигоҳдорӣ ва таҳлили додаҳо бо имкониятҳои васеи техникӣ. Бо тамоми бартариҳои объективии худ, системаи SAP BW як камбудии назаррас дорад. Ин арзиши баланди нигоҳдорӣ ва коркарди маълумот аст, махсусан ҳангоми истифодаи абрии SAP BW дар Hana.

Чӣ мешавад, агар шумо ба истифодаи баъзе маҳсулоти ғайри SAP ва беҳтараш OpenSource ҳамчун анбор шурӯъ кунед? Мо дар X5 Retail Group GreenPlum-ро интихоб кардем. Ин, албатта, масъалаи хароҷотро ҳал мекунад, аммо дар айни замон, масъалаҳое ба миён меоянд, ки ҳангоми истифодаи SAP BW қариб ба таври нобаёнӣ ҳал карда мешаванд.

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Аз ҷумла, чӣ гуна маълумотро аз системаҳои манбаъ, ки асосан ҳалли SAP мебошанд, гирифтан мумкин аст?

HR Metrics аввалин лоиҳае буд, ки дар он ҳалли ин мушкилот зарур буд. Ҳадафи мо эҷод кардани як анбори маълумоти кадрӣ ва таҳияи ҳисоботи таҳлилӣ дар соҳаи кор бо кормандон буд. Дар ин ҳолат, манбаи асосии маълумот системаи транзаксионии SAP HCM мебошад, ки дар он тамоми фаъолиятҳои кормандон, ташкилӣ ва музди меҳнат амалӣ карда мешаванд.

Истихроҷи маълумот

Дар SAP BW барои системаҳои SAP истихроҷи маълумотҳои стандартӣ мавҷуданд. Ин истихроҷкунандагон метавонанд ба таври худкор маълумоти заруриро ҷамъоварӣ кунанд, тамомияти онро назорат кунанд ва дельтаҳои тағирёбандаро муайян кунанд. Дар ин ҷо, масалан, манбаи стандартии маълумот барои атрибутҳои корманд 0EMPLOYEE_ATTR:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Натиҷаи истихроҷи маълумот аз он барои як корманд:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Дар ҳолати зарурӣ, чунин истихроҷкунанда метавонад ба талаботи худ тағир дода шавад ё истихроҷи шахсии шумо эҷод карда шавад.

Аввалин идеяе, ки ба миён омад, имкони истифодаи дубораи онҳо буд. Мутаассифона, ин кори номумкин гардид. Аксарияти мантиқ дар тарафи SAP BW амалӣ карда мешавад ва бедард ҷудо кардани истихроҷкунанда дар манбаъ аз SAP BW ғайриимкон буд.

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

Сохтори нигоҳдории маълумот дар SAP HCM

Барои фаҳмидани талабот ба чунин механизм, мо аввал бояд муайян кунем, ки кадом маълумот ба мо лозим аст.

Большинство данных в SAP HCM хранится в плоских SQL таблицах. На основании этих данных приложения SAP визуализируют пользователю оргструктуры, сотрудников и прочую HR информацию. Например, вот так в SAP HCM выглядит оргструктура:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Аз ҷиҳати ҷисмонӣ, чунин дарахт дар ду ҷадвал нигоҳ дошта мешавад - дар hrp1000 объектҳо ва дар hrp1001 робитаҳои байни ин объектҳо.

Объектҳои "Шӯъбаи 1" ва "Дафтари 1":

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Муносибати байни объектҳо:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

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

Намоиши менеҷер дар SAP:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Нигоҳдорӣ дар ҷадвали пойгоҳи додаҳо:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Маълумот дар бораи коргарон дар па* чадвалхо нигох дошта мешавад. Масалан, маълумот дар бораи рӯйдодҳои кадрӣ барои корманд дар ҷадвали pa0000 нигоҳ дошта мешавад

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Мо тасмим гирифтем, ки GreenPlum маълумоти "хом" -ро мегирад, яъне. танҳо онҳоро аз ҷадвалҳои SAP нусхабардорӣ кунед. Ва бевосита дар GreenPlum онҳо коркард ва ба объектҳои физикӣ (масалан, Департамент ё Корманд) ва ченакҳо (масалан, шумораи миёнаи кормандон) табдил дода мешаванд.

Тақрибан 70 ҷадвал муайян карда шуд, ки маълумот аз онҳо бояд ба GreenPlum интиқол дода шавад. Пас аз он мо ба коркарди усули интиқоли ин маълумот шурӯъ кардем.

SAP шумораи хеле зиёди механизмҳои ҳамгироиро пешниҳод мекунад. Аммо роҳи осонтарин ин аст, ки дастрасии мустақим ба пойгоҳи додаҳо бинобар маҳдудиятҳои иҷозатномадиҳӣ манъ аст. Ҳамин тариқ, тамоми ҷараёнҳои ҳамгироӣ бояд дар сатҳи сервери барнома амалӣ карда шаванд.
Мушкилоти навбатӣ набудани маълумот дар бораи сабтҳои ҳазфшуда дар базаи SAP буд. Вақте ки шумо сатрро дар пойгоҳи додаҳо нест мекунед, он аз ҷиҳати ҷисмонӣ нест карда мешавад. Онхое. ташаккули дельтаи тагйирот дар асоси вакти тагйирот имконнопазир буд.

Албатта, SAP HCM дорои механизмҳои сабти тағироти додаҳо мебошад. Масалан, барои интиқоли минбаъда ба системаҳои қабулкунанда нишондиҳандаҳои тағирёбанда мавҷуданд, ки ҳама гуна тағиротро сабт мекунанд ва дар асоси онҳо Idoc (объект барои интиқол ба системаҳои беруна) ташаккул меёбад.

Намунаи IDoc барои тағир додани намуди 0302 барои корманд бо рақами кадрӣ 1251445:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Ё нигоҳ доштани сабтҳои тағироти маълумот дар ҷадвали DBTABLOG.

Намунаи сабт барои нест кардани сабт бо калиди QK53216375 аз ҷадвали hrp1000:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Аммо ин механизмҳо барои ҳама маълумоти зарурӣ дастрас нестанд ва коркарди онҳо дар сатҳи сервери барнома метавонад захираҳои зиёдеро сарф кунад. Аз ин рӯ, ба таври оммавӣ имкон додани сабти ном дар ҳама ҷадвалҳои зарурӣ метавонад боиси коҳиши назарраси кори система гардад.

Мушкилоти асосии навбатӣ ҷадвалҳои кластерӣ буд. Баҳодиҳии вақт ва маълумоти музди меҳнат дар версияи RDBMS-и SAP HCM ҳамчун маҷмӯи ҷадвалҳои мантиқӣ барои ҳар як корманд барои ҳар як ҳисоб нигоҳ дошта мешавад. Ин ҷадвалҳои мантиқӣ ҳамчун маълумоти дуӣ дар ҷадвали pcl2 нигоҳ дошта мешаванд.

Кластери музди меҳнат:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Маълумотро аз ҷадвалҳои кластерӣ ҳамчун фармони SQL ҳисоб кардан мумкин нест, аммо истифодаи макросҳои SAP HCM ё модулҳои функсионалии махсусро талаб мекунад. Мутаносибан, суръати хониши чунин ҷадвалҳо хеле паст хоҳад буд. Аз тарафи дигар, чунин кластерҳо маълумотеро нигоҳ медоранд, ки танҳо як маротиба дар як моҳ лозиманд - музди ниҳоӣ ва ҳисобкунии вақт. Пас, суръат дар ин ҳолат он қадар муҳим нест.

Оценивая варианты с формированием дельты изменения данных, решили так же рассмотреть вариант с полной выгрузкой. Вариант каждый день передавать гигабайты неизменных данных между системами не может выглядеть красиво. Однако он имеет и ряд преимуществ – нет необходимости как реализации дельты на стороне источника, так и реализация встраивания этой дельты на стороне приемника. Соответственно, уменьшается стоимость и сроки реализации, и повышается надежность интеграции. При этом было определено, что практически все изменения в SAP HR происходят в горизонте трех месяцев до текущей даты. Таким образом, было принято решение остановиться на ежедневной полной выгрузке данных из SAP HR за N месяцев до текущей даты и на ежемесячной полной выгрузке. Параметр N зависит от конкретной таблицы
ва аз 1 то 15 аст.

Нақшаи зерин барои истихроҷи маълумот пешниҳод карда шуд:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Системаи беруна дархост тавлид мекунад ва онро ба SAP HCM мефиристад, ки дар он ин дархост барои пурра будани маълумот ва иҷозат барои дастрасӣ ба ҷадвалҳо тафтиш карда мешавад. Агар санҷиш муваффақ бошад, SAP HCM барномаеро иҷро мекунад, ки маълумоти заруриро ҷамъоварӣ мекунад ва онро ба ҳалли ҳамгироии Fuse интиқол медиҳад. Fuse мавзӯи заруриро дар Кафка муайян мекунад ва маълумотро ба он ҷо интиқол медиҳад. Баъдан, маълумот аз Кафка ба Stage Area GP интиқол дода мешавад.

Дар ин занҷир, мо ба масъалаи истихроҷи маълумот аз SAP HCM таваҷҷӯҳ дорем. Биёед онро муфассалтар дида бароем.

Диаграммаи мутақобилаи SAP HCM-FUSE.

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

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

Маълумоти дархост ба бадан дар формати json фиристода мешавад.
Усули http: POST.
Намунаи дархост:

Истихроҷи маълумот аз SAP HCM ба анборҳои маълумоти ғайри SAP

Хидмати SAP дархостро барои пуррагӣ, мувофиқат ба сохтори кунунии SAP ва мавҷудияти иҷозати дастрасӣ ба ҷадвали дархостшуда назорат мекунад.

Дар ҳолати хатогиҳо, хидмат бо рамз ва тавсифи мувофиқ ҷавоб медиҳад. Агар назорат бомуваффақият бошад, он раванди заминаро барои тавлиди намуна эҷод мекунад, идентификатори беҳамтои сессияро тавлид мекунад ва ба таври синхронӣ бармегардонад.

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

Системаи беруна сессияи ҷорӣро ҳамчун кушода сабт мекунад. Агар барои ин ҷадвал ҷаласаҳои дигар вуҷуд дошта бошанд, онҳо бо огоҳии сабтшуда баста мешаванд.

Фоновое задание SAP формирует курсор по заданным параметрам и пакет данных заданного размера. Размер пакета – максимальное количество записей, которые процесс читает из БД. По умолчанию принимается равным 2000. Если в выборке БД больше записей, чем используемый размер пакета после передачи первого пакета формируется следующий блок с соответствующим offset и инкрементированным номером пакета. Номера инкрементируются на 1 и отправляются строго последовательно.

Баъдан, SAP бастаро ҳамчун вуруд ба хидмати веби системаи беруна мегузаронад. Ва система назоратро дар бастаи воридотӣ иҷро мекунад. Сеанс бо ID-и гирифташуда бояд дар система ба қайд гирифта шавад ва он бояд дар ҳолати кушода бошад. Агар рақами баста > 1 бошад, система бояд гирифтани бомуваффақияти бастаи қаблиро сабт кунад (package_id-1).

Агар идора бомуваффақият анҷом дода шавад, системаи беруна маълумоти ҷадвалро таҳлил ва захира мекунад.

Илова бар ин, агар парчами ниҳоӣ дар баста мавҷуд бошад ва силсиласозӣ муваффақ бошад, модули ҳамгироӣ дар бораи анҷоми бомуваффақияти коркарди сессия огоҳ карда мешавад ва модул ҳолати сессияро нав мекунад.

Дар ҳолати хатогии назорат/таҳлил, хато сабт карда мешавад ва пакетҳои ин сессия аз ҷониби системаи беруна рад карда мешаванд.

Ба ҳамин монанд, дар акси ҳол, вақте ки системаи беруна хатогиро бармегардонад, он сабт карда мешавад ва интиқоли бастаҳо қатъ мешавад.

Барои дархост кардани маълумот дар тарафи SAP HSM, хидмати ҳамгироӣ амалӣ карда шуд. Ин хидмат дар чаҳорчӯбаи ICF (SAP Internet Communication Framework -) амалӣ карда мешавад. help.sap.com/viewer/6da7259a6c4b1014b7d5e759cc76fd22/7.01.22/en-US/488d6e0ea6ed72d5e10000000a42189c.html). Он ба шумо имкон медиҳад, ки маълумотро аз системаи SAP HCM бо истифода аз ҷадвалҳои мушаххас пурсед. Ҳангоми эҷоди дархости додаҳо, барои ба даст овардани маълумоти зарурӣ рӯйхати майдонҳои мушаххас ва параметрҳои филтрро муайян кардан мумкин аст. Дар баробари ин, татбиқи хидмат ягон мантиқи тиҷоратро дар назар надорад. Алгоритмҳои ҳисобкунии дельта, параметрҳои дархост, мониторинги якпорчагӣ ва ғайра низ дар паҳлӯи системаи беруна амалӣ карда мешаванд.

Ин механизм ба шумо имкон медиҳад, ки ҳама маълумоти заруриро дар тӯли чанд соат ҷамъоварӣ ва интиқол диҳед. Ин суръат дар арафаи қобили қабул аст, бинобар ин мо ин ҳалли муваққатиро баррасӣ мекунем, ки имкон дод, ки ниёз ба асбоби истихроҷ дар лоиҳа пур карда шавад.
В целевой картине для решения задачи экстракции данных прорабатываются варианты использования CDC систем типа Oracle Golden Gate или ETL инструментов типа SAP DS.

Манбаъ: will.com

Илова Эзоҳ