Site icon SAP Human Resources Experts And Solutions

How SAP ALE works

<h2>What is SAP ALE&quest;<&sol;h2>&NewLine;<p><strong>SAP ALE &&num;8211&semi; Application Link Enabling<&sol;strong> &&num;8211&semi; data exchange technology&comma; developed by <a href&equals;"http&colon;&sol;&sol;sap&period;com">SAP AG<&sol;a>&period; It&&num;8217&semi;s a technology because it has a set of tools&comma; protocols&comma; formats which allow exchanging data in real-time or offline between SAP or non-SAP systems&period; It&&num;8217&semi;s a huge layer of settings&comma; functionality&comma; and opportunities which we rarely use&period; Let&&num;8217&semi;s have a look at this stack and short SAP ALE configuration guide&period;<&sol;p>&NewLine;<h2>SAP ALE communication stack<&sol;h2>&NewLine;<p><strong>CPIC &&num;8211&semi; Common Programming Interface for Communication<&sol;strong> &&num;8211&semi; low level communication protocol&period; You can read further here <a href&equals;"https&colon;&sol;&sol;www-01&period;ibm&period;com&sol;software&sol;network&sol;commserver&sol;windows&sol;library&sol;cpic&period;htm" rel&equals;"noopener">https&colon;&sol;&sol;www-01&period;ibm&period;com&sol;software&sol;network&sol;commserver&sol;windows&sol;library&sol;cpic&period;htm<&sol;a><br &sol;>&NewLine;<strong>RFC &&num;8211&semi; Remote Function Call<&sol;strong> &&num;8211&semi; high level communication protocol to call remote functions<br &sol;>&NewLine;<b>tRFC &lpar;transaction RFC&rpar; &sol; qRFC &lpar;queued RFC&rpar; &sol; aRFC &lpar;asynchronous RFC&rpar; &sol; sRFC &lpar;synchronous RFC&rpar;<&sol;b> &&num;8211&semi; a way to deliver messages to the receiver with confirmation<br &sol;>&NewLine;<strong>IDOC &&num;8211&semi; Intermediate DOCument &sol; BAPI &lpar;Business Application Programming Interface&rpar;<&sol;strong> &&num;8211&semi; message format<br &sol;>&NewLine;<a href&equals;"https&colon;&sol;&sol;en&period;wikipedia&period;org&sol;wiki&sol;Electronic&lowbar;data&lowbar;interchange" target&equals;"&lowbar;blank" rel&equals;"noopener"><strong>EDI &&num;8211&semi; Electronic Data Interchange<&sol;strong><&sol;a> &&num;8211&semi; data exchange procedure between SAP-nonSAP systems&period; International standard by chance&period;<br &sol;>&NewLine;<strong>ALE &&num;8211&semi; Application Link Enabling<&sol;strong> &&num;8211&semi; data exchange procedure between SAP-SAP&period;<&sol;p>&NewLine;<p>Here is what I suggest you to discuss&period;<&sol;p>&NewLine;<h2>The CORE of SAP integration in SAP ALE layer<&sol;h2>&NewLine;<p><strong>RFC &&num;8211&semi; Remote Function Call<&sol;strong>&comma; is a mechanism to call functions remotely&period; The idea is simple and works this way&period; We know some functionality exists on the remote server&period; &&num;8216&semi;Hey&comma; server&comma; I know you have this function&comma; I know the parameters&period; I want you to run it on my behalf but on your side Here is my authorization&period; Give me the result&period;&&num;8217&semi; Server spins hard drives and once it makes sure I&&num;8217&semi;m not a little theft&comma; it runs the requested function with my login&period;  Any other program can run the same function on that same server locally&period; A checkbox in SE37 transaction makes the difference if it could be run remotely&period;<br &sol;>&NewLine;<&excl;--more--><br &sol;>&NewLine;RFC by itself is a protocol that SAP components and programs use to communicate to each other&period; SAP ALE relies on this as a technical transport for its data&period; The vendor offers <a href&equals;"https&colon;&sol;&sol;wiki&period;scn&period;sap&period;com&sol;wiki&sol;display&sol;ABAPConn&sol;Download&plus;and&plus;Installation&plus;of&plus;NW&plus;RFC&plus;SDK" target&equals;"&lowbar;blank" rel&equals;"noopener">RFC SDK<&sol;a> free of charge to use in your own code&period; If you take a look at standard RFC destinations in SM59 transaction&comma; you&&num;8217&semi;ll see a lot of standard tools use RFC to work properly&period; SAP GUI&comma; SAPlpd to print docs&comma; Adobe Designer to develop PDF forms and other tools works through RFC&period;<&sol;p>&NewLine;<p>Here is the idea that we can handle RFC calls to do some useful and meaningful work for us&period; I used such handler to connect Time processing Server with SAP&period; There was a communication driver which supported RFC calls&period; Once I needed time data to flow in SAP I called that driver&comma; it converted my request into its internal format and sent to own SQL-based server to communicate the time devices&period;<&sol;p>&NewLine;<p>So if you have any Arduino or another hardware device you can easily develop an RFC SDK based driver to connect SAP with the real world&period; And it&&num;8217&semi;s amazing&period; You register that driver in SM59 and use standard ABAP&comma; ALE Distribution Model to &&num;8216&semi;talk to the hardware world&&num;8217&semi;&period; This is an Internet of Things world that much popular today&period;&period; well&comma; after bitcoins&comma; maybe&period;<&sol;p>&NewLine;<p>Assume we&&num;8217&semi;ve decided what to call&colon; either a program or a functional module&period; Then we need to decide how to call it&colon; transaction&comma; synchronously&comma; asynchronously or in a queue&rpar;&period;<&sol;p>&NewLine;<ul>&NewLine;<li>sRFC &lpar;synchronous RFC&rpar; &&num;8211&semi; synchronous call&period; Make a call&comma; the system tries to reach remote system immediately&period; If it&&num;8217&semi;s not available&comma; an error is returned&period;<&sol;li>&NewLine;<li>tRFC &lpar;transaction RFC&rpar; &&num;8211&semi; transaction call&period; Make a call&comma; the system tries to reach remote system&period; If it&&num;8217&semi;s not available right now&comma; the request is delayed and stored in a box called LUW &lpar;Logical Unit of Work&rpar;&period; These boxes are picked up and collected&period; Once the remote system is up delivery layer transports them one by one&period; But there is no strict sequence who comes first or last&period; Only the whole LUW is guaranteed to be executed at once like a transaction&period; Or canceled as a transaction&period; You can monitor this in SM58 transaction&period;<&sol;li>&NewLine;<li>aRFC &lpar;asynchronous RFC&rpar; &&num;8211&semi; improved transaction call&period; It communicates more to the remote&period; It doesn&&num;8217&semi;t wait for the remote system to execute the request&comma; while it makes a call and goes further along the code&period; In case of a heavy task or bad network&comma; these calls can hold for a while&period;<&sol;li>&NewLine;<li>qRFC &lpar;queued RFC&rpar; &&num;8211&semi; is advanced tRFC with that difference when LUW boxes are delivered and executed strictly in the order they were called&period; Like a queue&period; It guarantees delivery and execution on the remote side&period; You can monitor this in SMQ &lpar;1&comma;2&comma;S&comma;R&rpar; transactions&period;<&sol;li>&NewLine;<&sol;ul>&NewLine;<p>Why do I write this to you&quest; I&&num;8217&semi;m confident that consultants should be aware of the &&num;8216&semi;background&&num;8217&semi;&comma; some lower level technologies to write valid functional specs&period; Developers not always understand what&&num;8217&semi;s beneath the functional logic consultant writes in a doc&period;<&sol;p>&NewLine;<h2>The basic entity to send and receive data in SAP ALE<&sol;h2>&NewLine;<p><strong>IDOC<&sol;strong> is a data structure&comma; which can be represented as a flat file&comma; XML&comma; CSV&comma; JSON or any other format&period; It contains three parts&colon;<&sol;p>&NewLine;<ul>&NewLine;<li>Control record&period;<&sol;li>&NewLine;<li>Data segments&period;<&sol;li>&NewLine;<li>Document status&period;<&sol;li>&NewLine;<&sol;ul>&NewLine;<h2>SAP ALE &&num;8211&semi; How does it all work&quest;<&sol;h2>&NewLine;<p>By event or schedule&comma; a data extraction runs&period; For HR it could be a change pointer or PFAL transaction&period; It calls functional module to create an IDOC&period; It doesn&&num;8217&semi;t matter if it runs one record or thousands&period; Data segments only restricted by network and servers&period;<&sol;p>&NewLine;<p>The system searches for a recipient in the BD64 transaction &lpar;data distribution model&rpar;&period; Every IDOC has its own message type which we setup in model distribution&colon;<&sol;p>&NewLine;<p>sender system &&num;8211&semi; receiver system &&num;8211&semi; message type &&num;8211&semi; filters&period; If conditions match IDOC is placed into a queue to be sent to the receiver&period; We recall that RFC works not only for SAP but any other system supporting RFC protocol&period; It could even send data to a cat if we have RFC compatible cat at the office&period;<&sol;p>&NewLine;<p>Based on partner settings &lpar;will cover later&rpar; receiving system understands what functional module to use to do opposite conversion from IDOC to business data&period;<&sol;p>&NewLine;<p>If it is a BAPI call system does the same like for IDOC &&num;8211&semi; searches through distribution model where to send a call&period; Once the recipient is found it makes an RFC call &lpar;qRFC or sRFC&rpar;&period; This is how FICO module parameters are verified on payroll postings&period;<&sol;p>&NewLine;<p>Of course&comma; this is the very basics&period;<&sol;p>&NewLine;<p>Let&&num;8217&semi;s take a scalpel&period;<&sol;p>&NewLine;<h2>What is IDOC made of&quest;<&sol;h2>&NewLine;<p>IDOC &&num;8211&semi; segment &&num;8211&semi; field&comma; this is an IDOC structure&period; An IDOC is defined with a message type  &lpar;HRMD&lowbar;A for HR&comma; transaction WE81&rpar;&period; Depending on the system version message type reference to IDOC type &lpar;transaction WE82&rpar;&period;<&sol;p>&NewLine;<p>IDOC type has two parts &lpar;WE30 transaction&rpar;&colon;<&sol;p>&NewLine;<ul>&NewLine;<li>Basic type&period; The basic type is delivered by SAP&period; As a rule&comma; it already has most of the required fields to transfer data between SAP systems&period; If you need something else you can use a segment from another IDOC or use an extension&period;<&sol;li>&NewLine;<li>Extension&period; In WE31 transaction create a new segment&comma; and in WE30 add it as an extension for basic type&period; All we need is to add it in WE82 transaction to HRMD&lowbar;A basic type&period;<&sol;li>&NewLine;<&sol;ul>&NewLine;<p>Have a look&colon;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2396" style&equals;"width&colon; 1995px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we30&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2396" class&equals;"wp-image-2396 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we30&lowbar;01&period;png" alt&equals;"Change IDOC extension" width&equals;"1985" height&equals;"560" &sol;><&sol;a><p id&equals;"caption-attachment-2396" class&equals;"wp-caption-text">Change IDOC extension<&sol;p><&sol;div>&NewLine;<div id&equals;"attachment&lowbar;2397" style&equals;"width&colon; 1669px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we31&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2397" class&equals;"wp-image-2397 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we31&lowbar;01&period;png" alt&equals;"SAP IDOC segment definition" width&equals;"1659" height&equals;"860" &sol;><&sol;a><p id&equals;"caption-attachment-2397" class&equals;"wp-caption-text">SAP IDOC segment definition<&sol;p><&sol;div>&NewLine;<div id&equals;"attachment&lowbar;2398" style&equals;"width&colon; 1560px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we82&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2398" class&equals;"wp-image-2398 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we82&lowbar;01&period;png" alt&equals;"Assign IDOC extension to IDOC message type" width&equals;"1550" height&equals;"1036" &sol;><&sol;a><p id&equals;"caption-attachment-2398" class&equals;"wp-caption-text">Assign IDOC extension to IDOC message type<&sol;p><&sol;div>&NewLine;<p>Don&&num;8217&semi;t forget to fill this segment with data&period; It could be done with user-exits or BAdI &lpar;see below&rpar;&period; Also keep in mind when you create your own segment there are two pieces of ABAP code involved&colon; one in the sending system to pack business data into the segment and one in the receiver system to extract data from the segment&period; You need to develop this code on your own and to mention this new extension in WE57 with the same functional module to process incoming data&period;<&sol;p>&NewLine;<p>Suppose we&&num;8217&semi;ve finished with the segment&period; We can fill it with the data&comma; extract data&period; The question is how to send it to the right recipient&period;<&sol;p>&NewLine;<h2>SAP Partners are big bosses who deal<&sol;h2>&NewLine;<p>To define a route&comma; we need to learn some definitions of a partner&comma; port and ALE distribution model&period; SAP ALE Configuration is all about these simple things which we set only once like a landscape and then only add data flows&period;<&sol;p>&NewLine;<p>A partner is a sender or receiver &lpar;WE20&rpar;&period; Port &&num;8211&semi; way of communication &lpar;WE21&rpar;&period; SAP ALE Distribution model is the route itself &lpar;BD64&rpar;&period; Air flight control center is BD87&period;<&sol;p>&NewLine;<p>We setup ports in WE21 transaction&period; Here we see some examples&comma; like&comma; tRFC File&comma; XML HTTP&comma; XML File&comma; ABAP PI&period; According to naming it&&num;8217&semi;s not a big deal to understand about data exchange formats&period; For SAP-SAP we choose tRFC and create a new port&period; System asks for an RFC connection &lpar;SM59&rpar; &&num;8211&semi; address where to send data&period; If you remember from above&comma; RFC works above the CPI-C&comma; what means if we need to use our own driver&comma; we need to register it in SM59 and attach through RFC connection here&comma; in port settings&period; Then we&&num;8217&semi;ll get tRFC port with own driver and communication underneath&period; If we want to go with qRFC&comma; tick a checkbox Queue Processing is supported&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2400" style&equals;"width&colon; 1993px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we21&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2400" class&equals;"wp-image-2400 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we21&lowbar;01&period;png" alt&equals;"Define port in SAP ALE" width&equals;"1983" height&equals;"799" &sol;><&sol;a><p id&equals;"caption-attachment-2400" class&equals;"wp-caption-text">Define port in SAP ALE<&sol;p><&sol;div>&NewLine;<p>Now we create partners&period; A partner must be in both systems&colon; one in a receiver and one in a sending system&period; Open WE20 in the sending system and create LS type &lpar;logical system&rpar; partner&period; Data sending will perform from the system&comma; not any specific user or object&period; To ensure landscape integrity SAP has developed Logical systems &&num;8211&semi; unique system naming that distinguish systems within a landscape&period; Every system involved in integration must have its own unique logical name&comma; even if it&&num;8217&semi;s not SAP system&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2402" style&equals;"width&colon; 1741px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2402" class&equals;"wp-image-2402 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;01&period;png" alt&equals;"Define partner in SAP ALE" width&equals;"1731" height&equals;"1278" &sol;><&sol;a><p id&equals;"caption-attachment-2402" class&equals;"wp-caption-text">Define partner in SAP ALE<&sol;p><&sol;div>&NewLine;<p>Also&comma; create a partner in the receiving system&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2403" style&equals;"width&colon; 1788px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;02&period;png"><img aria-describedby&equals;"caption-attachment-2403" class&equals;"wp-image-2403 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;02&period;png" alt&equals;"Define partner in SAP ALE" width&equals;"1778" height&equals;"1039" &sol;><&sol;a><p id&equals;"caption-attachment-2403" class&equals;"wp-caption-text">Define partner in SAP ALE<&sol;p><&sol;div>&NewLine;<p>We&&num;8217&semi;re almost done&period; Let&&num;8217&semi;s setup a route and test it<strong>&period;<&sol;strong><&sol;p>&NewLine;<p>In BD64 create a route like on the figure below&period; It says we want to send HRMD&lowbar;A IDOC from ER1 client 100 to ER1 client 200&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2405" style&equals;"width&colon; 1400px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;bd64&lowbar;01&period;png"><img aria-describedby&equals;"caption-attachment-2405" class&equals;"wp-image-2405 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;bd64&lowbar;01&period;png" alt&equals;"Setup distribution model in SAP ALE" width&equals;"1390" height&equals;"256" &sol;><&sol;a><p id&equals;"caption-attachment-2405" class&equals;"wp-caption-text">Setup distribution model in SAP ALE<&sol;p><&sol;div>&NewLine;<p>If you save the model and try to distribute &lpar;Edit &&num;8211&semi; Model View &&num;8211&semi; Distribute&rpar;&comma; but the system throws an error&comma; don&&num;8217&semi;t panic&period; Model distribution is a data exchange as well and needs additional IDOC for that&period; Adjust your partner to the figure&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2406" style&equals;"width&colon; 1800px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;03&period;png"><img aria-describedby&equals;"caption-attachment-2406" class&equals;"wp-image-2406 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;we20&lowbar;03&period;png" alt&equals;"Fix error with partner profile" width&equals;"1790" height&equals;"1255" &sol;><&sol;a><p id&equals;"caption-attachment-2406" class&equals;"wp-caption-text">Fix error with partner profile<&sol;p><&sol;div>&NewLine;<p>Distribute it and let&&num;8217&semi;s go testing&period;<&sol;p>&NewLine;<p>Open PFAL&comma; fill it with the selection data&period; Hit &&num;8216&semi;Run&&num;8217&semi;&period; Looks like no errors but there is no data appeared in ER1 200&period; Because when we setup port we set it to build a queue without immediate sending it places our IDOC into an outbound queue&period; We need to push it manually or schedule a job to do that&period; In BD87 we can see IDOCs in the outbound queue&period; Select them and hit &&num;8216&semi;Process&&num;8217&semi;&period;<&sol;p>&NewLine;<div id&equals;"attachment&lowbar;2410" style&equals;"width&colon; 1782px" class&equals;"wp-caption alignnone"><a href&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;bd&lowbar;87&period;png"><img aria-describedby&equals;"caption-attachment-2410" class&equals;"wp-image-2410 size-full" src&equals;"http&colon;&sol;&sol;saphr&period;ru&sol;wp-content&sol;uploads&sol;bd&lowbar;87&period;png" alt&equals;"Monitor SAP ALE IDOC processing" width&equals;"1772" height&equals;"628" &sol;><&sol;a><p id&equals;"caption-attachment-2410" class&equals;"wp-caption-text">Monitor SAP ALE IDOC processing<&sol;p><&sol;div>&NewLine;<p>Something wrong with incoming IDOC&period; It&&num;8217&semi; because of  setup of APLI processing code &lpar;Inbound IDoc&colon; Individual Processing&rpar; for the partner in the receiving system&period; This code works for a lot of IDOC&comma; but not HR&period; For human resources IDOCs there is HRMD processing code&period; The code defines the internal logic how to process IDOCs in functional modules&period; Change APLI to HRMD and rerun processing in BD87 transaction in the receiving system&period; You don&&num;8217&semi;t need to run PFAL again as sending was successful&period;<&sol;p>&NewLine;<p>Green semaphore and we&&num;8217&semi;re done&period; My employee was transferred&period;<&sol;p>&NewLine;<p>IDOC statuses are stored in TEDS1 table&period;<&sol;p>&NewLine;<p>If you need to send data every time it&&num;8217&semi;s changed in the source system&comma; then have a look at my article about <a href&equals;"https&colon;&sol;&sol;saphcmsolutions&period;com&sol;sap-change-pointers-4-steps&sol;" target&equals;"&lowbar;blank" rel&equals;"noopener">SAP Change Pointers<&sol;a>&period; There are just 4 steps to set them&period;<&sol;p>&NewLine;<p><span style&equals;"color&colon; &num;ff6600&semi;">Don&&num;8217&semi;t forget to share and repost&excl;<&sol;span><br &sol;>&NewLine;<&excl;-- Begin MailChimp Signup Form --> <&sol;p>&NewLine;<style type&equals;"text&sol;css">&NewLine;&Tab;&num;mc&lowbar;embed&lowbar;signup&lbrace;background&colon;&num;fff&semi; clear&colon;left&semi; font&colon;14px Helvetica&comma;Arial&comma;sans-serif&semi; width&colon;100&percnt;&semi;&rcub;<br &sol;>&NewLine;&Tab;&sol;&ast; Add your own MailChimp form style overrides in your site stylesheet or in this style block&period;<br &sol;>&NewLine;&Tab; We recommend moving this block and the preceding CSS link to the HEAD of your HTML file&period; &ast;&sol;<br &sol;>&NewLine;<&sol;style>&NewLine;<div id&equals;"mc&lowbar;embed&lowbar;signup">&NewLine;<form id&equals;"mc-embedded-subscribe-form" class&equals;"validate" action&equals;"https&colon;&sol;&sol;saphcmsolutions&period;us3&period;list-manage&period;com&sol;subscribe&sol;post&quest;u&equals;9946caca159afc9a77502e9a5&amp&semi;id&equals;ba2e54e4b1" method&equals;"post" name&equals;"mc-embedded-subscribe-form" novalidate&equals;"" target&equals;"&lowbar;blank">&NewLine;<div id&equals;"mc&lowbar;embed&lowbar;signup&lowbar;scroll"><label for&equals;"mce-EMAIL">Stay tuned with our best practices and top-notch advices<&sol;label><br &sol;>&NewLine;<input id&equals;"mce-EMAIL" class&equals;"email" name&equals;"EMAIL" required&equals;"" type&equals;"email" value&equals;"" placeholder&equals;"email address" &sol;><br &sol;>&NewLine;<&excl;-- real people should not fill this in and expect good things - do not remove this or risk form bot signups--><&sol;p>&NewLine;<div style&equals;"position&colon; absolute&semi; left&colon; -5000px&semi;" aria-hidden&equals;"true"><input tabindex&equals;"-1" name&equals;"b&lowbar;9946caca159afc9a77502e9a5&lowbar;ba2e54e4b1" type&equals;"text" value&equals;"" &sol;><&sol;div>&NewLine;<div class&equals;"clear"><input id&equals;"mc-embedded-subscribe" class&equals;"button" name&equals;"subscribe" type&equals;"submit" value&equals;"Subscribe" &sol;><&sol;div>&NewLine;<&sol;div>&NewLine;<&sol;form>&NewLine;<&sol;div>&NewLine;<p><&excl;--End mc&lowbar;embed&lowbar;signup--><&sol;p>&NewLine;<h2>Useful SAP ALE info for ABAP<&sol;h2>&NewLine;<h3><strong>Useful user-exits and BAdI<&sol;strong><&sol;h3>&NewLine;<p>•EXIT&lowbar;SAPLRHA0&lowbar;001&colon; HR-CA&colon; ALE Outbound Processing With Receiver Enhancement<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHA0&lowbar;002&colon; HR-CA&colon; Export Parameters for ALE Inbound Processing IDOC&lowbar;INPUT&lowbar;HRMD<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHA0&lowbar;003&colon; HR-CA&colon; Import Parameters for ALE Inbound Processing IDOC&lowbar;INPUT&lowbar;HRMD<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHA0&lowbar;004&colon; HR-CA&colon; ALE Outbound Processing&colon; Control Record<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHA0&lowbar;005&colon; HR-CA&colon; ALE Inbound Processing&colon; Check Object<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHA0&lowbar;006&colon; HR-CA&colon; ALE Outbound Processing&colon; Check Object<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHAL&lowbar;001&colon; HR-CA&colon; ALE Outbound Processing&colon; Change IDoc<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHAL&lowbar;002&colon; HR-CA&colon; ALE Inbound Processing&colon; Change Infotype Data<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHAL&lowbar;003&colon; HR-CA&colon; ALE Outbound Processing&colon; Convert Infotype &sol; Segment<br &sol;>&NewLine;•EXIT&lowbar;SAPLRHAL&lowbar;004&colon; HR-CA&colon; ALE Inbound Processing&colon; Convert Segment &sol; Infotype<&sol;p>&NewLine;<h3>BAdI&colon; Inbound Processing for HR Master Data<&sol;h3>&NewLine;<p>HRALE00INBOUND&lowbar;IDOC<&sol;p>&NewLine;<p>Business Add-In in inbound processing for HR master data &lpar;used in the function module IDOC&lowbar;INPUT&lowbar;HRMD&rpar;&period;<&sol;p>&NewLine;<p>BAdI&colon; Check&sol;Additional Processing of Object in Inbound Process<&sol;p>&NewLine;<p>The CHECK&lowbar;OBJECT method of this Business Add-In enables checks to be performed on an HR object in the RH&lowbar;IDOC&lowbar;OBJECTS&lowbar;SAVE inbound function module&period; The method is accessed after customer exit SAPLRHA0&lowbar;005&period;<&sol;p>&NewLine;<p>BAdI&colon; Customer-Defined Inbound Processing<&sol;p>&NewLine;<p>HRALE00SPLIT&lowbar;INBOUND<&sol;p>&NewLine;<p>SAP-internal inbound processing for HR master data&colon;<&sol;p>&NewLine;<p>The system determines which HR objects should be removed from standard processing because no data structures exist for them in the receiving system&period; Irrespective of the type of receiving system&comma; you can further process these HR objects&period;<&sol;p>&NewLine;<p>BAdI&colon; Fine Tuning of Original System Mechanism<&sol;p>&NewLine;<p>HRALE00ORIGSYSTEM<&sol;p>&NewLine;<p>Business Add-In for Original System Mechanism<&sol;p>&NewLine;<h3>BAdI&colon; Outbound Processing HR Master Data<&sol;h3>&NewLine;<p>HRALE00OUTBOUND&lowbar;IDOC<&sol;p>&NewLine;<p>Business Add-In in output processing for HR Master Data &lpar;used in the function module RH&lowbar;MASTER&lowbar;IDOC&lowbar;DISTRIBUTE&lowbar;HRMD&rpar;&period;<&sol;p>&NewLine;

Exit mobile version