Blog

Home / Archive by category "Blog"
Sharepoint – SAP Material Master Creation

Sharepoint – SAP Material Master Creation

The goal of this article is to emphasize on Talend Data Integration capabilities, features and ease of use especially with SAP & Sharepoint.

Sharepoint provides a lot of features that can be used in order to automate & control processes such as workflow management, active directory integration, etc­­­­­.  Combining these with SAP ERP could prove to be an essential easy to use tool for companies.

SAP material master creation has always been ­cumbersome due to the amount of data that need to be maintained and most of the times from different company departments.  This is where Sharepoint can be best utilized to simplify the process.

The designed process is the following:

  • As soon as the responsible department receives information to create the new material master, it creates a new item maintaining only Basic data.
  • As soon as the data are maintained a workflow process is initiated to inform sales department to maintain sales data.
  • The same workflow process is triggered as soon as sales data are saved and informs accounting department to maintain accounting data.
  • When all data are correctly maintained, the record receives a specific status and can be sent to SAP.
  • A schedule Talend job runs and imports the information to SAP. Whether the job success or not, Talend sends appropriate emails to the respective users.

Error logging is essential since the material master might not be created in SAP for a number of reasons.  In this scenario Error logging is implemented using postgresSQL data base.

In order to better utilize Sharepoint capabilities BPC power Forms (http://www.bpc-components.com/pages/sharepoint/power-forms-html/), has been used to design the material master views in sharepoint.  The following views were created in sharepoint:

Figure 1: Basic Data
Figure 1: Basic Data
Figure 2: Sales Data
Figure 2: Sales Data

Figure 3: Accounting Data

Figure 3: Accounting Data

Using BPC Powerforms is very easy to force all kind of necessary checks on data integrity, before being able to save the record.  In this example only material number is checked not to be null.

Talend job incorporates 4 sub jobs as described below:

  1. Monitors connection issues with SAP and post them in the error log table.
  2. Get material master data from sharepoint.
  3. Find next available material number in SAP.
  4. Post material in SAP.
Figure 4: Talend job for material master creation
Figure 4: Talend job for material master creation

Material number can use external or internal number range in SAP.  In case the material number is using internal number range, then an additional Bapi (BAPI_STDMATERIAL_GETINTNUMBER) has to be used in order to find the latest material number available in the system.

To save the material master in SAP, BAPI_MATERIAL_SAVEDATA, is used with the “document” feature enabled.  The document feature enables the use of bapi input / output parameters as xml documents rather than as table.

The execution results are monitored (when online), using tlogrow components and are shown in the execution window.

Figure 5: Talend results
Figure 5: Talend results

Material master in SAP has been created based on the selection used during bapi configuration.

Figure 6: Created Material Master views
Figure 6: Created Material Master views

In the next page, material accounting data are shown:

Figure 7: Material accounting data
Figure 7: Material accounting data

 

Sharepoint – SAP Change Management Process (Transport requests) using Talend

Sharepoint – SAP Change Management Process (Transport requests) using Talend

The goal of this article is to emphasize on Talend Data Integration capabilities and features.

The implementation of a rather easy scenario for ERP Change Management Process has been chosen to serve exactly this scope.

This is an ideal solution when there is a great need for integrating data and your enterprise is using:

  • MS Sharepoint On Premise version.

SharePoint is commonly used as an enterprise Intranet and using it’s mechanisms (Windows authentication, Lists, workflows, etc.) proves to be a quite straight forward solution for implementing several approval processes.

  • SAP ERP.

What if you can achieve that 5X faster at 1/5th of the average price?

Process analysis

Our case includes the following steps:

  1. Change request creation (Sharepoint).
  2. Change request approval (Sharepoint). Each change request can include several SAP transport requests that create a specific list where each item is a transport request (Figure 1).
    Figure 1: Transport Request List
    Figure 1: Transport Request List

     

  3. Import transport request (SAP QAS).
  4. Requestor verification of change.
  5. Import transport request (SAP Prd).

The Transport request list is read, uploaded in an intermediate database for control reasons and then imports SAP transport requests.  This way we ensure information integrity, consistency and accessibility.

The process runs using two Talend jobs so as to avoid designing too complicated jobs.

  • The first job (Figure 2) downloads the sharepoint list and updates the database.
Figure 2: Download Sharepoint list
Figure 2: Download Sharepoint list
  • The second job (Figure 3)
Figure 3: Import SAP Transport requests
Figure 3: Import SAP Transport requests
  1. Iterates on the requests that need to be imported in SAP,
  2. Checks if Co files & Data files exist (if not it terminates the process with a message).
  3. Copies the files in the appropriate SAP directory.
  4. Imports the requests.
  5. Logs BAPI return message (Figure 4) to the database and
    Figure 4: Talend logs
    Figure 4: Talend logs

     

  6. Finally updates the sharepoint list (Figure5).
Figure 5: Updated Sharepoint list
Figure 5: Updated Sharepoint list
SAP Purchase Order creation from MS Excel using Talend

SAP Purchase Order creation from MS Excel using Talend

The goal of this article is to emphasize on Talend Data Integration capabilities, features and ease of use especially with SAP.
What is even more important is that using Talend it is possible to create SAP Purchase Orders without need to use abap or any code at all!

The demonstrated scenario cannot be used as is, but needs a number of adjustments to be fully functional.

The scope of the process is to read purchasing data from an excel file, upload the data in SAP using a BAPI and create a Purchase Order.  Errors can be logged, but are not documented in the scenario for simplicity reasons.  Purchase order creation was chosen (instead of purchase requisition), since it requires more information and is more strictly ruled in SAP.

The purchase order that will be created will have four items with account assignment type K (cost center).

The Excel file must contain all required information for the purchase order to be created and is:

Figure 1: Excel structure
Figure 1: Excel structure

When using SAP Bapi, it is essential to define if you will be using multiple input / output parameters or document type input / output parameters.  In this scenario the document input / output is selected.

SAP Bapi input / output is mapped based on the above mentioned selection using a tXMLMap component as shown in figure 2.

Figure 2: PO creation sample job
Figure 2: PO creation sample job

Field mapping is essential, since a mapping misconfiguration would fail to create the purchase order in SAP.

Another very useful Talend feature is the capability to map, therefore log all SAP Bapi input or output tables.  This feature proves to be essential since it allows the user to know the process results (messages) as they are generated in SAP.  SAP generated errors help to identify the reason of the process success / failure and should be logged in an interfacing scenario.

There are three tLogRow components in the process each mapped as follows:

  • tLogRow_6, Bapi return table
  • tLogRow_7, Bapi items table
  • tLogRow_8, Bapi header table

Each component is utilized for process control / mapping verification and can be deleted as soon as the process is finalized.  When processing Talend jobs in background, there is no need for using tLogRow components.

The process is quite simple and as soon as it runs the results are shown in the execution window.

Figure 3: Job results
Figure 3: Job results

All four tLogRow components display the requested information based on their mapping.  The most important is Bapi return table (tLogRow6), which report Bapi return messages from sap.  According to the scenario purchase order 4500001079 was created in SAP.

The purchase order header is as follows:

Figure 4: SAP PO Header
Figure 4: SAP PO Header

Based on the input (excel) all components have account assignment K and their account assignment details are shown in figure 5:

Figure 5: Account assignment details
Figure 5: Account assignment details
Cisco call logs using Excel power pivot and Talend

Cisco call logs using Excel power pivot and Talend

The goal of this article is to demonstrate how a rather common reporting issue can be easily addressed using Talend and Excel power pivot.  Power pivot has been chosen as reporting tool, since if you are already using Excel, there is no need for additional cost.  In any case the same results can be achieved with any reporting tool.

A common problem that enterprises face with the use of any call center is usage reporting.   It is necessary to be able to track incoming and outgoing calls per department for a number of reasons.  The best approach would be to be able to connect directly to call center Db and download the appropriate data from there.  Another approach is to extract the data from the call center and work with these files.

Using Talend it is possible to address the problem with either solution, but in this scenario the second approach (extract files), was chosen.  Talend has very powerful capabilities in terms of file management, thus it is very easy to create a job for this purpose.

The designed process is shown in Figure 1 and is the following:

  • Cisco call manager extracts daily cdr files in a specific directory.
  • Talend will look at the specified directory for filenames starting with cdr.
    • If there are no files, Talend will create an exception and send an email stating that no file was found.
    • If there are files, it will process them one by one and send the data in a specified database, MySQL, for the specific scenario.  If the database rejects any data, again an email is sent to inform the user with the rejected rows.
  • If the process finishes successfully, then the processed files are moved to another folder (processed), so as to be able to keep track of all records at any given point of time.
Figure 1: Call logs process job
Figure 1: Call logs process job

Since the information is stored in a database, it is quite easy to design the required reporting.  Still another issue that has to be resolved is the appropriate access to specific information.  Every department should have access to specific records, but that is a trivial issue for any reporting tool and thus not presented in the specific scenario.

In order to fully utilize Excel power pivot functionality, the only thing that is required is a database to store (and read obviously) the data.  Power pivot is very powerful and can provide really good results with almost no extra cost at all.  It uses native excel and therefore it is easy to use for anyone already using excel.

In figure 2 you can see an excel sample of such a report.  The specific report layout aims to demonstrate power pivot capabilities and is by no means exhausting.   In terms of reporting every organization has its requirements and specifications that would need to be followed in any such implementation.

Power pivot provides some nice tools such as filters as shown in figure 2.  You can see that date filters and Initial caller are applied as buttons.  It is very easy to apply any kind filter combination just by selecting the appropriate filters and have the results filtered either in table format or graphically as shown in figure 3.

Two month data (January, February) are selected in the selection.  You can see that all dates are also selected both in the table and in the graph accordingly.  The graph shows calling parties sum of duration in two pies, the smaller one representing data less than 10% for each party.

Figure 2: Excel call log sample
Figure 2: Excel call log sample
Figure 3: Call logs for January, February
Figure 3: Call logs for January, February