SAP Netweaver - Creating ASP Web Applications
Creating an ASP .NET Web Application Using the SAP .NET Connector
A D V E R T I S E M E N T
SAP.NET Connector along with
Microsoft.NET can be used to create Web Applications. The following example
illustrates creating .NET project using Microsoft Visual Studio. NET. Here, a
client application reads and displays customer data from an SAP System using a
search value and then displays it in a data grid.
The example uses the function module
RFC_CUSTOMER_GET, which requires that customer data exist in the target SAP
System, for example, in IDES. Although it is possible to rename all development
objects and generated proxy classes, default names are used in this example.
This example is provided as part of the connector sample code (DNCWebApp).
Procedure of Creating an ASP .NET Web Application Using the SAP .NET
Connector:
1. Open Microsoft Visual Studio .NET.
2. Create a new C# Web form project:
Choose New. New Project. Visual C# Projects. ASP .NET Web Application.
You can also create a
project in any other common programming language for .NET, for example, in
Visual Basic .NET. In this case, you must add the SAP .NET proxy classes as a
separate project in the Microsoft Visual Studio .NET solution.
3. Rename the form Webform1.aspx to Default.aspx.
4. Add Web controls to your Web form.
5. Add proxy classes to connect the Web applications to your SAP server.
a. In the Solution Explorer, right-click on your project.
b. Choose Add. Add new item.
c. Select Web Project Items.
SAP Connector Class and choose Open.
The SAP .NET Connector Wizard opens.
d. Decide from where you want to generate the proxy classes.
Proxies can be created from
- Web Services Description Language (WSDL) files that originate in an SAP
interface repository (IFR)
- An SAP server
- Standard WSDL files
e. Select the client proxy object type and select beautify names option.
f. Select the Remote Function Modules (RFM) you want to use in your proxy
object.
You can use search filters to look for the Remote Function Modules. In the
example, enter the search argument RFC_CUST* in Name-Filter and select
RFC_CUSTOMER_GET.
g. Add the modules to your proxy object and choose NEXT.
The proxy classes for the referenced table and structure types are automatically
created and added to the project.
6. Build the solution with Build. Build Solution.
7. Create an SAP Login page to support user name and password authentication
a. In the Solution Explorer, right-click on your project.
b. Choose Add. Add new item.
c. Select Web Project Items. SAP Login Form
Leave the name as SAPLogin1.aspx.
8. Set the system connection information in the destination object of the
SAPLogin1.aspx page:
a. In the Solution Explorer window find the item SAPLogin1.aspx and
double-click on it to bring it up in the designer.
b. Look for the component destination1 on the bottom of the form.
c. Click on the destination component and set the properties for connecting
to your SAP system (for example AppServerHost and System Number). The other
properties like client, Password and username will be set from the login page.
9. Data bind the data grid to BRFCKNA1Table:
BRFCKNA1Table is the parameter of RFC_CUSTOMER_GET that contains the list of
customers.
a. Select SAP Table Wizard from the SAP proxy toolbox and Drag Drop it to
your working area. In the dialog box, select BRFCKNA1Table.
b. Select the data grid, and under Properties change Data Source to
BRFCKNA1Table using the drop down list.
c. Customize the list of columns displayed on the data grid by modifying the
Columns collection property.
10. On the default.aspx page, double-click the Button control you added
earlier to create an event handler for the control.
11. Add the connect code to your project:
Select Connect code from the SAP proxy toolbox.
Drag Drop it in the source
code of your event handler. A fragment of sample code is then inserted. It
connects to the SAP server using the authorization settings from the Proxy
Wizard. Normally, you must change these settings.
The syntax for the application will be
private void btnSearch_Click(object sender, System.EventArgs e)
{
// Declare parameters here
SAPProxy1 proxy = new SAPProxy1();
try
{
proxy.Connection =
SAP.Connector.SAPLoginProvider.GetSAPConnection(this);
// Call methods here
proxy.Rfc_Customer_Get("", txtCust.Text, ref brfcknA1Table1);
// Now update Data Bindings. On WinForms this will be automatic, on
// WebForms call the following line
this.DataBind();
}
catch(Exception ex)
{
// If SAPLoginProvider.GetSAPConnection(this) cannot get a connection,
// we might get an error.
// Normally this can be ignored as it will automatically will force a
// relogon.
}
}
12. Build and run the application.
The browser window opens and you are redirected to your SAPLogin1.aspx login
page.
13. Enter connection data (for example user, password and client).
If you select SAVE this
login information will be stored as an encrypted cookie on your computer and
will provide an alternative single sign-on capability the next time you wish to
access the site. If you do not select SAVE, the login information will still be
saved in the ASP .NET session state but will be lost once the browser is closed.
|