|
|
Windows DNAAs defined by Microsoft: “Microsoft® Windows® Distributed interNet Applications Architecture (Windows DNA) is the application development model for the Windows platform. Windows DNA specifies how to: develop robust, scalable, distributed applications using the Windows platform; extend existing data and external applications to support the Internet; and support a wide range of client devices maximizing the reach of an application.” Windows DNA provides an excellent platform for building web-based applications that leverage an existing Enterprise system. Windows DNA separates responsibilities into three tiers. Ø Presentation – the presentation tier contains the user interface services. Information is obtained and displayed from the user at this point and passed to the Business tier. Ø Business Logic – the business tier contains application-specific processing and business rules. The business rules ensure data obtained from the user can be correctly passed to the data tier. The business tier also obtains information from the data tier based on a user query and ensures it is presentable to the user in a usable form. Ø Data – the data tier is the persistent repository of application information. Microsoft’s Universal Data Access Strategy attempts to make access to the data tier common no matter what the back end store is. Note that the business and data tier may
support many different applications. Similarly, the Presentation tier may make
use of many business services to create a single application. Universal Data AccessMicrosoft Universal Data Access is Microsoft’s strategy for providing access to relational or non-relational information (such as e-mail and file system stores) across the enterprise. It is a collection of components including ADO, Remote Data Service (RDS) OLE DB, and ODBC. The goal of the strategy is to provide high-performance data connectivity to all sources of data while maintaining a consistent programming interface. I highly recommend you visit the web site mentioned in the references to see what Microsoft has planned for today and the future: http://www.microsoft.com/data. In terms of building a web-based application, the following diagram illustrates a common scenario.
Active Server Pages use ADO for data access. Either an ODBC driver or an OLE DB provider supports data access. Business rules are encapsulated in stored procedures. These stored procedures are the access point to the database. Many organizations already have the business rules and database in place - these organizations use client-server based architecture. Web enabling this infrastructure means removing the client and building a web-based interface on top of the existing business rules and database. This way technology is re-used and the day-to-day operations of the business are minimally impacted. For this exercise, we are going to look at using this model for interacting with an IBM AS/400. The AS/400 line of servers can support between 350 to 8000 clients. Many companies run their enterprise using an AS/400. Example information and applications that run on the machine include accounts receivable, parts, service, and customer database. The three ways we are going to look at are: Ø IBM Client Access ODBC Driver Ø Microsoft SNA Server OLE DB Provider for AS/400 and VSAM Ø IBM Client Access OLE DB Provider for AS/400 IBM Client Access ODBC DriverThe IBM Client Access ODBC Driver is part of the IBM Client Access software. It provides access to files and stored procedures on an AS/400 using ODBC. Existing programs on the AS/400 can be wrapped as stored procedures and called using ODBC. To configure the ODBC Driver you need to do the following: Ø Install Client Access Ø Configure a Client Access connection to your AS/400 Ø In the Client Access installation directory type: CWBCFG /host hostname /s where ‘hostname’ is the name of your AS/400 on your TCP/IP network Ø Configure a System Data Source in the ODBC Administrator The AS/400 can now be accessed just like any other ODBC data source. The reason you need to run the CWBCFG utility is to add Client Access configuration information for the .default user which permits IIS to find and use the configuration information. A sample connection string for a DSN name AS400_DSN would then be: objConnection.Open "Data Source=AS400_DSN;User ID=USERID;Password=PASSWORD" Previous to version V4R4 of OS/400, you could not natively create a SQL stored procedure. Stored procedures are generated from existing programs such as RPG. With V4R4 you can create stored procedures natively with SQL. However, in this case you need to have an ILE C compiler. While developing, you may run into the client hanging. The default error handling on an AS/400 expects operator intervention. So you end up with the situation where the client is waiting for the server to return and the server is waiting for someone to press a key. I recommend instead that the standard handling on the AS/400 be changed to return to the client and set a SQL Error. The other situation you might run into when adapting existing programs is that the program expects a display to exist. With a web based application there is no display so again the client will hang. When configuring the ODBC data source you specify the default library. You can specify multiple libraries. The first one listed is used as the default collection. In order to use a library, it must be specified in this list. Microsoft SNA OLE DB Provider for AS/400 and VSAMMicrosoft SNA Server has an OLE DB Provider for AS/400 and VSAM as part of its client installation. In fact, when installing SNA client, you have the option of only installing the OLE DB provider portion. No special changes need to be made to SNA Server to enable the OLE DB Provider. You have a few configuration choices if you use the SNA OLE DB Provider. You could put the SNA server and client on the same machine as the web server. In this case you save on hardware costs but suffer a performance hit. To scale, the first step is to move SNA Server to another machine. In this configuration you can have multiple web servers, each with SNA client installed, accessing the same SNA Server. Once SNA Client is installed, you need to use the SNA OLE DB MMC to configure a data source. A sample connection string using the SNA OLE DB Provider is: objConnection.Open "Provider=SNAOLEDB;User ID=USERID;Password=PASSWORD;Data Source=SAMPLE_SOURCE” where SAMPLE_SOURCE is the data source configured in MMC.
The SNA OLE DB Provider has the following features: Ø Set attributes and a record description of a host file (column information) Ø Lock files and records Ø Record navigation Ø Seek to a record based on an index. Ø Change records in a file. Ø Insert new records and delete records in a file You cannot obtain output parameters using this method. To retrieve data you need to rely on using temporary tables. I recommend you use QTMP. The temporary library only exists for the lifetime of a user session. It is automatically created when the user session starts and removed when it ends. The ports you need to open for firewalls are 1477 and 1478. However, you may also need to open all the ports required to enable NT Authentication. IBM Client Access OLE DB Provider for AS/400This OLE DB Provider has the following features, which should cover almost anything you need to do: Ø Record level access to tables Ø SQL stored procedures and SQL statements Ø Data queues Ø Programs Ø CL commands However, prior to Client Access Version 3 Release 2 Mod 0 (or above level) of OLE DB Provider, specifying a user name and password in the connection string causes an error. Not specifying it means that a login dialog box pops up when a connection is attempted to the AS/400. With V3R2M0 you can specify a username and password, however you have limited functionality. The release of V4R4 is supposed to provide full functionality and allow a username and password in the connection string. Once you install IBM Client Access and configure a connection you can start using the OLE DB Provider. A sample connection string is: objConnection.Open "Provider=IBMDA400;Data Source=SYSTEM_NAME" SQL Server 7 Data Transformation ServicesData Transformation Service is a feature of SQL Server 7. With DTS you can import, export, and transform data between Microsoft® SQL Server™ and any OLE DB, ODBC, or text file format. You can schedule a DTS package to run periodically. As well, you can manipulate the data as it moves between the two data sources. DTS is a valuable feature for building web-based applications. Some enterprise systems are scheduled to run batch jobs in the evenings, which means they may not be available. A web-based application usually needs to be available 24X7. Using DTS, data can be replicated to a SQL Server database thus enabling an application to run around the clock. Introducing web-based interaction with an enterprise system can cause a performance hit to existing users. DTS replication of data means that the Internet load can be transferred to SQL Server, thus removing the impact on existing enterprise users. Some Enterprise data may only be suitable for internal use. For instance abbreviations may have been used for product names in a database. DTS can massage the data as it is moved to SQL Server, thus making the data available for public use. DCOMIntegrating with SAPSAP claims to be the world’s largest enterprise software company. Many businesses rely on SAP for their business operations. This includes financials, human resources, manufacturing, and sales and distribution. The major value offered by SAP is the data schema and business rules to support the application. By Web-enabling SAP companies leverage their existing technology investment. They can extend the reach of their business operations to their customers and partners. The result is a saving for everyone involved in the business pipeline. DCOM Component ConnectorThe DCOM Component Connector is the bridge between the SAP business framework and Microsoft Windows Platform. The DCOM Component Connector is a web-based application that has a number of features of creating and maintaining the link between SAP and COM. A developer can view the SAP Business Objects and Business APIs (BAPIs) stored in the SAP repository and create COM objects which have the same APIs. This way SAP business logic can be invoked by making methods calls on COM objects. These objects are not just COM objects - they are MTS-aware COM objects. This means they can participate in transactions with other MTS components.
The starting point of using the DCOM component connector is to define the SAP system you are operation with. To configure a link to SAP a ‘destination’ is set up.
Once a destination is configured, the DCOM component connector has an Object Builder, which is a wizard for creating COM components based on the business objects in the SAP repository. Once created, the SAP object is created in ASP the same way as any other COM object. <% Dim oRS ' ADODB.RecordSet Dim oSAPDataObj ' SAPDemoObj.SAPDemoObj Set oSAPDemoObj = Server.CreateObject("RFCSampObj.RFCSampObj.1") oSAPDemoObj.Destination = "TEST" Call oSAPDemoObj.GetCustList( "*", "" , oRS ) %> All information returned from SAP is returned as ADO Recordsets. The code to access the data is just the any other ADO access (e.g. iterate through the records and the fields within each record). Other TechnologiesCOM Transaction Integrator (COMTI)COMTI is used to extend Microsoft Transaction Server (MTS) into the mainframe-based transaction processing, specifically Customer Information Control System (CICS) and Information Management System (IMS). It is shipped with SNA Server 4.0 and enables developers to create COM components that expose CICS and IMS transaction programs. Message Queuing (MSMQ)MSMQ is Microsoft’s message queuing product. It is a communications technology that enables applications on different systems to communicate with each other, even if systems and networks occasionally fail. MSMQ operates by enabling applications to communicate with each other through messages. MSMQ guarantees delivery of messages to applications even despite network and application failures. You can interact with other systems using MSMQ. SNA Server 4.0 SP2 has MSMQ-MQSeries Bridge that allow interoperation with IBM's MQSeries. XMLXML is starting to become the technology for interaction between different Enterprise systems. Microsoft has a BizTalk initiative, which is an XML framework for application integration and electronic commerce. Another initiative, which has strong support from Sun and IBM, is XML.org. Their web page describes their purpose as the following: “XML.ORG is designed to provide a credible source of accurate, timely information about the application of XML in industrial and commercial settings and to serve as a reference repository for specific XML standards such as vocabularies, DTDs, schemas, and namespaces.” For more details about these and other initiatives see the presentation “Using XML for E-commerce”. Resources“Record-Level Access to Host Data” Technical Paper http://www.microsoft.com/sna/guide/recordlevel.asp?A=2&B=6 IBM Client Access OLE DB Support http://www.as400.ibm.com/clientaccess/oledb/ Configuring Client Access ODBC Driver to work with IIS http://www.as400.ibm.com/clientaccess/iisodbc.htm IBM Client Access ODBC Driver http://www.as400.ibm.com/developer/client/odbc.html Redbook – A Fast Path to AS/400 Client/Server Using AS/400 OLE DB Support http://www.redbooks.ibm.com/abstracts/sg245183.html Redbook – AS/400 Client Access Express for Windows: Implementing V4R4M0 http://www.redbooks.ibm.com/abstracts/sg245191.html SAP DCOM Component ConnectorCOM section of http://www.sap.com/bapi BizTalk Framework XML.Org |
|
|
|
|
|
| |
Host Department NOLIMIT Web Hosting UK Dedicated Servers reservationless conference calls D&g sunglasses Pennsylvania Pool Contractor answering service efax swimming pool contractor Teleconference MSN sunglasses |
Email TopXML
|
|
Front Page Daily Stuff TopXML Forum XML blogs XML Newsgroups BizTalk Biztalk Utilities Biztalk Utilities Tutorial B2B SAP XML Microsoft .NET Dotnet System XML Soapformatter SQLXML XMLserializer XQuery PHP PHP SimpleXML PHP XML Dom PHP XML RPC PHP XSLT Java Java Java XML Xalan Microsoft ASP ASP Schemas XML SQL Server XML XMLDom XSL XSL Tutorial XSLT Stylesheets General Javascript CSS XHTML WAP |