cancel
Showing results for 
Search instead for 
Did you mean: 

WebDynpro Java Screen Feasibility

Anmol_Kumar
Participant
0 Kudos

Hi,

I am trying to understand the Feasibility of this Requirements solution from SAP WebDynpro Java perspective.

Requirements-

1) Design a SAP WebDynpro Java screen. On click of upload button read an Excel sheet which contains Part no1 & Part no2 records. In an excel sheet there is 6,000 records.

2) Whenever a record is read from the Excel it will search the unique combination of Part no1 & Part no2 in the database (in this case SAP MDM Data Manger). The database contains 7,00,000 records which is not indexed/ sorted..

3) 6000 times (excel sheet records) step 2 is repeated

4) For each record the output can be zero, one or more records. The output need to be displayed/ generated in Excel sheet

5) Concurrently this functionality is used by 5 users.

Question-

a) Do this requirement can be achieved using SAP WebDynpro Java ? If yes, then from performance perspective how much time it take to upload the excel sheet & create a new Excel sheet functionality?

b) If No, then why ?

I am trying to understand whether this requirement is Feasible (Y/ N) with valid reasons?

Any valid inputs will be highly appreciated!

Thanks,

Kumar

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hello Anmol,

I my opinion its more of a java layer functionality than it has to do with WDJ UI, I can see it a simple UI with very few UI elements.

If you keep the EXCEL parsing and generation of the excel sheet in the Java layer whihc is called from the WDJ, its a upload download screen for WDJ.

The Java layer can be quite tricky as the DB is quite big and non-indexed, in terms of performance.

Regards

Senon

Anmol_Kumar
Participant
0 Kudos

Thanks Robin & Thomas.

Yes, it is more of Java Layer functionality but this UI is designed using WDJ.

I am trying to understand whether this requirement is Feasible (Y/ N) ? If yes than practically excel sheet should be generated in few minutes not in hours.. It will help me to go ahead or not (Y /N) for this requirement.

Please let me know your thoughts.

Qualiture
Active Contributor
0 Kudos

Well, I believe with the hints given by Senon and myself, you can do the math

Qualiture
Active Contributor
0 Kudos

IMHO this can be done in WDJ, however then I would modify point 2:

- I would definately put an index on your database. I cannot think of a single reason why this couldn't be done.

- I would read the Excel file in total first, and only then perform the check against the indexed database (either via a web service, feeding the 6000 entries in one go, or if this cannot be done, 6000 single roundtrips. But don't do it while reading the file, the I/O will drain your performance)

Having 5 concurrent users querying a non-indexed 7M record table 6000 times is just madness Have it indexed, and your performance will be fine

Anmol_Kumar
Participant
0 Kudos

Hi Robin,

Let me advise SAP MDM administrator to index the database.

1) If it is indexed and if it works then as proximity how much time it take to read and generate an excel sheet ?

2) Suppose after indexing the database is not indexed/ it does not work (limitation from DB perspective) then proximity how much time it take to read and generate an excel sheet ?

This requirement is feasible (Y/N) from WebDynpro Java perspective ?

Also could you please clarify this sentence - "But don't do it while reading the file, the I/O will drain your performance)".

Thank you for the prompt reply.

Qualiture
Active Contributor
0 Kudos

It depends completely on your hardware, IT infrastructure, etc... Really impossible to tell

It can be anything from 3 seconds (first class hardware, speedy connections, indexed tables) to 8 hours (sub-optimal hardware and infrastructure, non-indexed tables)

And by "But don't do it while reading the file, the I/O will drain your performance)" I meant don't do your check against the backend while reading your excel file row by row. Just read the excel file in it's entirety, and then perform your checks