Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
former_member229775
Discoverer
1,760

Introduction

This document describes the steps of uploading data into SAP BW via input forms and executing BW process chain using Neptune web/mobile application.

Background

Wouldn’t it be nice if Business users can update and maintain master data using beautifully well-designed web/mobile User Interface instead of sending flat files?

It is even nicer if SAP BW developers can monitor and execute process chain on the web/mobile device without having to log into SAP BW system.

What about having a fully web/mobile based automated HTML5 User interface solution for the business users where they can update master data and load the data into SAP BW without the need for developers.

Benefits of having such a solution for the end users include:


- Trust in the data by end users as they have complete control

- improve efficiency

- Faster reporting as there is no need to wait for the scheduled job to update the report.

- Save time and cost as some task will be shifted from the developers to the end users.

- Empower the users to take complete ownership of their data.

It is possible with Neptune application designer and this document will describe the basic step to get you started in implementing a similar solution.

Step 1 – Create a web based form for data input



The first thing to do is to create an ABAP dictionary table that will store the data coming from Neptune input form.

Create table - ZDEBT


Here I have created a Table called ZDEBT with 3 columns and I have used
both custom and standard data elements. At this stage the table is empty and it will be populated via input forms.

Create table structure

Create table structure that will serve as an internal table. This table structure has identical columns as ZDEBT table.

Step 2 - Create Neptune application for data input

  • Launch Neptune application designer with transaction code /NEPTUNE/DESIGNER

  • Create Neptune application and use Jquery Mobile Library. Note that I have added application class ZDEBT_CLASS. you can choose to add the class at this stage if you know it or do it later after you have created your class.

  • Select Theme – Here I have chosen Blue crystal
    them

Create Neptune application

Under Designer tab,
you can create Neptune application by dragging and dropping Jquery mobile
elements. This is similar to any HTML WYSIWYG Editor. In my application, I have
used the following elements.

  • Table elements
  • Form elements
  • Text elements
  • Button elements

My application contains 3 input value fields and button to save the data into SAP table and another button to load process chain (loading
data from a table into SAP BW data provider)

  • You can preview your application on the web and mobile.

Previewing application

The application can be previewed by either selecting the “preview” for web-based or “Preview in Wrapper” for mobile based.

Mobile

Web-based preview

Step 3 – Create ABAP class with TCODE SE24

Creating an ABAP class that allows your Neptune application to
communicate with SAP.

Create a class with SE24. Here I have entered ZDEBT_CLASS

Tab Interface

Under interface, add /NEPTUNE/IF_NAD_SERVER interface and
the methods will be added.

Tab Attribute

Under attributes tab, add the structure that was created at the beginning and the type is also the table name created earlier.

Tab Method

methods were added automatically after Interface was added. you can choose to add your own custom methods.

Add ABAP class to Neptune application

Go back to Neptune application and add the created class if
not already done

Step 4 – Bind Input value field to table structure

Here I am going to bind the value of the input field to internal table. By the way, the structure is more like an internal table that
holds data.

So here I am going to assign the field DEBT_YEAR from the structure to the input value field year_input

Perform the same step for Country and amount

Year_input – value field

Country_input– value field

Amount_input– value field

Add Event ID to buttons for save and load process chain

Button and load process chain has Attribute type SUBMIT

Under attribute tab, select submit as type.

Step 5 - Communication between Neptune application and ABAP Class

Go to Neptune class and add logic to the buttons.

Double click on Neptune method Handle OnSubmit and add logic to the button.

SAVE Button – insert data from into table

We insert the value into ZDEBT table from the input value
field

LOAD_PC – Starts process chain using function module.

Here we call a function module to execute the process chain.

Step 6 - Test the application

Launce the application in “Preview in Wrapper “ mode. This will display the mobile version

Insert data and Save it to the database table.

Database table is now updated


Once data is stored in the table,

You can create

- Generic datasource

- Data provider

- Process chain for data load automation

Once you have your process chain ready you can execute the function module from your web/mobile application to trigger the
and Load and that's the function of the LOAD_PC button.

Things worth considering

Process chain

You might be wondering what happens if the process chain is already running and a user triggered it again from Neptune. Some of the ways to prevent it includes:

  • Add a delay in the process chain start so that the process chain waits until the previous process is completed.
  • Enhance the “Load_PC “ logic to check the status of the process from table RSPCLOGCHAIN before it is triggered.

Authorization

When giving End users the possibility to execute process chain, you might want to check the authorization policy in your organization first. Usually, users are not giving such authorization. In my case, we had to update user authorization with the AUTH object to execute process chain.


Labels in this area