Solved

Discussion: "It needs to interface with SAP"...

Posted on 2012-04-03
8
535 Views
Last Modified: 2012-04-10
Our company provide a web application for managing staff training and skill levels.  The app sits on SQL Server and ASP.NET.  Recently some large potential clients have taken an interest in buying our software, however, many of the (very) large businesses state that our software 'needs to interface with SAP'.  Upon seeking clarification about this, we never seem to get any further forward.  I have NO knowledge of SAP at all, so excuse my naivety.

Points will be given to all contibutors who can shed some light on my confusion...

What sort of interfacing do you think might be required here, and how would this work?  One client says they use SAP for the personnel data (so I guess names, DOB, salary, employeeIDs, bank details).  Our system supports basic details, but not salary etc (as we focus on skills not security-sensitive data at present).

Is it possible that personnel data can sit on SAP and the remainder on our system?  If so, if an administrator runs a report for 4000 people, does our system need to pull in 4000 surnames from SAP over a web-API?  That would take forever...!

Also, how would the userID values in SAP correlate with our system's userID's, and when users are created/modified/deleted how is that generally reflected back into 3rd party app's?

Does anyone have any experience of using SAP alongside different software app's?

Sorry for the vagueness here, I'm just trying to get a rough idea of how this would all fit together...
0
Comment
Question by:Rouchie
  • 3
  • 3
  • 2
8 Comments
 
LVL 68

Accepted Solution

by:
Qlemo earned 300 total points
Comment Utility
I can be vague only, too. Too big is the field of SAP interfaces. But most companies expect you to have an active component interfacing into SAP via documented and well-known protocols (IDocs, RFC, XML, and the like). Whenever information is required, that active component retrieves the bulk of information needed.

Our company interfaces more passively, that is we get informed that there are new data, and get only the changes. This requires to have an own data base which contains the necessary information to map SAP to own IDs.

A more direct attempt is to use the SAP database directly. However, since there are a lot of different DBMS running as DB for SAP (like IBM OSses, MSSQL, Oracle, and many more), that task "might" be demanding. But it allows for direct retrieval of necessary information on demand.
0
 
LVL 13

Assisted Solution

by:Rick
Rick earned 200 total points
Comment Utility
I think what they mean is that they enter all or most the data they need in SAP, they can run some basic reports, but can't get the same level of detail your application provides. They probably want to join the data they have in SAP with the data you have in your application and use your application to pull customized reports.
0
 
LVL 25

Author Comment

by:Rouchie
Comment Utility
Hi

Thanks both for your responses.

>> Our company interfaces more passively, that is we get informed that there are new data, and get only the changes. This requires to have an own data base which contains the necessary information to map SAP to own IDs.

So does this run as some kind of scheduled task to check for new data, or can SAP 'push' changes to your application?  Surely the latter would require an API that SAP is programmed to recognise?
Is it not very cumbersome having a 'middleware' database to map the ID values?  Could/Can SAP be modified with an extra column to hold your database ID's against each user?

>> They probably want to join the data they have in SAP with the data you have in your application and use your application to pull customized reports.

How would this generally be done?  Would my application interrogate SAP, or SAP interrogate my application, or both?  Would I be therefore expected to know about the SAP database table structure to do this?  It seems like a vast topic...!
0
 
LVL 68

Assisted Solution

by:Qlemo
Qlemo earned 300 total points
Comment Utility
So does this run as some kind of scheduled task to check for new data, or can SAP 'push' changes to your application?  Surely the latter would require an API that SAP is programmed to recognise?
We use the timer approach. SAP triggering requires you to provide a service component for that purpose, which is not difficult. That component registers in SAP, and BAPI or whatsoever needs to call it for signaling changes.

Is it not very cumbersome having a 'middleware' database to map the ID values?
Yes, it is. But it is needed in all cases you are not able to use the SAP IDs directly.

Could/Can SAP be modified with an extra column to hold your database ID's against each user?
SAP is customable, and it is "only" an issue for the SAP Consultant doing the customizing. My experience is that it is preferred not have to modify the SAP processes.
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 13

Assisted Solution

by:Rick
Rick earned 200 total points
Comment Utility
@ 37805775:

In this case, your application would interrogate SAP and use data from both systems to generate customized reports.

You would need to have basic knowledge of their database structure. If you don't know much about SAP, it would be good for you to read this book.

There is a SAP .NET connector add on for Visual Studio. You can learn more about it here.

There is also a 3rd party tool at http://www.aconcaguait.com/components.php which allows you to integrate SAP with .NET.
0
 
LVL 25

Author Comment

by:Rouchie
Comment Utility
Thanks again for your input - this is proving an interesting read.

>> We use the timer approach. SAP triggering requires you to provide a service component for that purpose, which is not difficult. That component registers in SAP, and BAPI or whatsoever needs to call it for signaling changes.

So I'm guessing here that you'd create a component that, at regular intervals, pushes changes to data out to my application via SOAP (or whatever) for my application to handle and process?

>>SAP is customable, and it is "only" an issue for the SAP Consultant doing the customizing. M

Related to my point above... assuming I'd rather not learn SAP myself and stick to my .NET roots, would the SAP consultant be employed to create the component detailed above?  Given that SAP is customisable and runs on different DBMS's, how do these consultants ever keep up with all the different uses available?  It sounds expensive... ;-)

>> In this case, your application would interrogate SAP and use data from both systems to generate customized reports.

Would you mind sharing with me what applications you currently work on that integrate with SAP?  Rather than give me brand names etc, I'm curious to see what type of data is pushed back and forth, and how the two systems interact.  The idea of pushing changes into another app sounds like the approach I might use, however, I'd be interested to see how else it's used in the real world.

Lastly, and at the risk of offending people...SAP seems to be quite a complex subject, and there doesn't appear to be a huge number of SAP professionals out there compare with other application platforms.  How did SAP ever become so popular amongst large-scale organisations?
0
 
LVL 68

Assisted Solution

by:Qlemo
Qlemo earned 300 total points
Comment Utility
There are a lot of SAP professionals - but they all get paid very well for being exactly that.
SAP isn't a system you can say "do a little of this, add something here, compile". It is very complex, because it is customizable. Money isn't earned so much with SAP itself, but everything having to do with it. The poor folks having to cope with the introduction of SAP in their company usually have a training phase of 2 years - does that tell you something?

We've got the luck that the companies needing our services pay the SAP consultants. In your case you need to provide something more generic, and probably even need to register for a SAP certificate (SAP will validate function, documentation and integration). Expensive, I can tell.
0
 
LVL 25

Author Closing Comment

by:Rouchie
Comment Utility
Thank you for your input.  That's been very interesting and gives me some confidence with future demands...! :-)
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Nowadays, some of developer are too much worried about data. Who is using data, who is updating it etc. etc. Because, data is more costlier in term of money and information. So security of data is focusing concern in days. Lets' understand the Au…
Slowly Changing Dimension Transformation component in data task flow is very useful for us to manage and control how data changes in SSIS.
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Viewers will learn how to use the SELECT statement in SQL and will be exposed to the many uses the SELECT statement has.

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

6 Experts available now in Live!

Get 1:1 Help Now