13
Wed, Nov
5 New Articles

Extend iSeries Data to Microsoft Excel Efficiently and Transparently

Web Languages
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

With the introduction of .NET XML Web Services, it's become easier to deliver iSeries data into Excel. In my last article, I explained how to retrieve data from the iSeries using .NET XML Web Services. Now, let's go a step further.

If you work with accounting/finance folks, you probably realize that the iSeries does not take precedence over the almighty Excel. Most accounting/finance professionals prefer to view and manipulate their financial data in Excel. Let's assume your accounting manager wants to see a gross sales report on a daily basis to do some comparative analysis, and he is not enthusiastic about a Web reporting tool that makes him wait forever while almost mocking him with an animated GIF going back and forth.

Data extraction methods are critical to the success of any reporting infrastructure. Hence, it is imperative that you use the most efficient way to extract the data from the iSeries. In this case, .NET Web Services are an excellent option. Web Services can take advantage of your existing RPG programs and business logic to deliver data from iSeries to Excel or any other business application. I will demonstrate how you can deliver data into Excel safely and efficiently. Figure 1 shows the process flow.

http://www.mcpressonline.com/articles/images/2002/article2V405300500.png

Figure 1: This is the process for delivering data to Excel from the iSeries. (Click images to enlarge.)
 

There are basically two steps:

1. Excel is the launching point. A hyperlink will redirect the user to the .NET Web Service, which will retrieve data and write it to an XML file.

2. The XML file generated by the Web Service will then be used to map data in Excel.

Step 1

Let's start with Excel. Open a new, empty Excel spreadsheet. Then, from the Insert menu, choose Insert Hyperlink (Figure 2). This hyperlink redirects the user to our Web Service so the data can be updated anytime the user wants.

http://www.mcpressonline.com/articles/images/2002/article2V405300501.png

Figure 2: Insert hyperlink.

The hyperlink text to display would be something like "Go get my financial data." For the address attribute, put in the URL for your Web Service, which will be something like http://localhost/AS400Webservices/service1.asmx. Click OK. Your screen will look like Figure 3.

http://www.mcpressonline.com/articles/images/2002/article2V405300502.png

Figure 3: Your hyperlink is added.

You have successfully added a hyperlink to your Web Service. Now, click on the hyperlink to get to the Web Service (Figure 4).

http://www.mcpressonline.com/articles/images/2002/article2V405300503.png

Figure 4: You're at the Web Service.

Notice the "Web methods" listed under Service1. These are simply scenarios for your accounting/financial Web Service. By looking at the descriptions, you'll get a pretty good idea as to what can you do with these Web Services as a middle tier. It is noteworthy that XML files generated here can be used in any application that supports XML. For example, one of the above Web methods generates an XML file that serves as a mail merge data source for a Word document.

Let's click on one of our Web methods (Web Services have Web methods like RPG programs have subroutines or procedures). When we click on Financial_data, the screen in Figure 5 pops up.

http://www.mcpressonline.com/articles/images/2002/article2V405300504.png

Figure 5: The Financial_data Web method looks like this.

Notice the Invoke button. This button actually invokes the Web Service and causes it to retrieve your data from the iSeries and then turn it into an XML file on the Web server or anywhere on your network. For this example, let's call this file customers.xml and write it to the C: drive.

This straightforward Web method does not pass any parameters. In the real world, you will be using more complex Web Services capable of passing parameters to your RPG programs and getting the appropriate data back. Figure 6 shows such a Web Service.

http://www.mcpressonline.com/articles/images/2002/article2V405300505.png

Figure 6: This Web Service passes parameters.

Notice that you have text boxes for your parameters just like you would in an RPG display program or a Web reporting tool. These parameters will be passed directly into your RPG program for processing. Once you fill in the parameters, you simply click Invoke.

Let's get back to our example. After you invoke this Financial_data Web Service, you will get a message like "Thank you for updating your financial data." That tells the user that the process is finished.

At this point, a file called customers.xml is created on your C: drive. You can write a file on any shared network drive as long as it is accessible to the XML Web Service as well as the user who will be using it.

Step 2

Now, let's pull this file into Excel. If you have Microsoft Office 2003, choose Data > XML > XML Source (Figure 7). The screen in Figure 8 will pop up. (If you have a prior version, use the Web Query function of Excel, which is little different but equally effective.)

http://www.mcpressonline.com/articles/images/2002/article2V405300506.png

Figure 7: Choose Data > XML > XML Source.

http://www.mcpressonline.com/articles/images/2002/article2V405300507.png

Figure 8: Pull your data into Excel.

Notice the two buttons at the bottom right side of the screen, Options and XML Maps. Clicking on XML Maps brings up a dialog box that asks for an XML data source. We already created the .xml file, and we will use that file as the data source. Click on the Add button in the dialog to navigate to that .xml file (Figure 9).

http://www.mcpressonline.com/articles/images/2002/article2V405300508.png

Figure 9: Navigate to the .xml file.

Choose the file that your Web Service created earlier and click Open (Figure 10).

http://www.mcpressonline.com/articles/images/2002/article2V405300509.png

Figure 10: Click Open.

Notice that the file is added to your XML Maps dialog box. You can add several data sources (maps) here. Your Web Service can generate multiple .xml files, and you can add all of them here if you want to see all the data in one spreadsheet.

But for now, let's continue with just one. You can change the name of this data source by clicking on it and then clicking on the Rename button next to the Add button. Let's do that. Rename this to Financial Data for easy reference and hit OK. You will see something like Figure 11.

http://www.mcpressonline.com/articles/images/2002/article2V405300510.png

Figure 11: Rename your data source to something intuitive.

On the right side of your spreadsheet, all the nodes of your XML document are displayed for you. Now, drag each of those to a cell on your spreadsheet (Figure 12).

http://www.mcpressonline.com/articles/images/2002/article2V405300511.png

Figure 12: Drag and drop the nodes into the spreadsheet.

Now, you've dragged and dropped all of the nodes from the .xml file onto the spreadsheet. But where is the data? Don't worry. Simply right-click within the blue border, and the following will appear (Figure 13).

http://www.mcpressonline.com/articles/images/2002/article2V405300512.png

Figure 13: Retrieve your data now.

You are ready to receive data. Click on XML > Refresh XML Data. Your spreadsheet will pull in the data (Figure 14).

http://www.mcpressonline.com/articles/images/2002/article2V405300513.png

Figure 14: Your data is in your spreadsheet.

You will not have to do this process again. Mapping an XML file is a one-time setup. Once it's done, you can save and close the spreadsheet. The XML mapping stays with the spreadsheet. When you open the spreadsheet again, simply clicking on the hyperlink invokes the Web Service to replace the underlying .xml file and to use XML Refresh to refresh the data.

I will conclude by leaving you with an expanded view of the methodology I just demonstrated and its potential use in an organization (Figure 15).

http://www.mcpressonline.com/articles/images/2002/article2V405300514.png

Figure 14: How can you use this process in your business?

You can create a real-time, on demand reporting infrastructure with very little investment while enjoying legendary iSeries performance and strength. This solution requires no additional hardware or software on your iSeries. It also takes advantage of your existing in-house development talent pool, leveraging and maximizing your investment in your iSeries. You will, however, require Visual Studio .NET, which was under $2,500 the last time I checked.

Tahir Malik is a senior iSeries programmer/analyst with Kos Pharmaceuticals, Inc. He has over a decade of iSeries development experience and has worked extensively with iSeries Web-enablement/cross-platform integration projects, including client/server programming and intranet/extranet Web development using .NET. He can be reached at This email address is being protected from spambots. You need JavaScript enabled to view it..









BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

$

Book Reviews

Resource Center

  • SB Profound WC 5536 Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. You can find Part 1 here. In Part 2 of our free Node.js Webinar Series, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Brian will briefly discuss the different tools available, and demonstrate his preferred setup for Node development on IBM i or any platform. Attend this webinar to learn:

  • SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation. Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects. The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the company are not aligned with the current IT environment.

  • SB HelpSystems ROBOT Generic IBM announced the E1080 servers using the latest Power10 processor in September 2021. The most powerful processor from IBM to date, Power10 is designed to handle the demands of doing business in today’s high-tech atmosphere, including running cloud applications, supporting big data, and managing AI workloads. But what does Power10 mean for your data center? In this recorded webinar, IBMers Dan Sundt and Dylan Boday join IBM Power Champion Tom Huntington for a discussion on why Power10 technology is the right strategic investment if you run IBM i, AIX, or Linux. In this action-packed hour, Tom will share trends from the IBM i and AIX user communities while Dan and Dylan dive into the tech specs for key hardware, including:

  • Magic MarkTRY the one package that solves all your document design and printing challenges on all your platforms. Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product. Make sure your data survives when catastrophe hits. Request your trial now!  Request Now.

  • SB HelpSystems ROBOT GenericForms of ransomware has been around for over 30 years, and with more and more organizations suffering attacks each year, it continues to endure. What has made ransomware such a durable threat and what is the best way to combat it? In order to prevent ransomware, organizations must first understand how it works.

  • SB HelpSystems ROBOT GenericIT security is a top priority for businesses around the world, but most IBM i pros don’t know where to begin—and most cybersecurity experts don’t know IBM i. In this session, Robin Tatam explores the business impact of lax IBM i security, the top vulnerabilities putting IBM i at risk, and the steps you can take to protect your organization. If you’re looking to avoid unexpected downtime or corrupted data, you don’t want to miss this session.

  • SB HelpSystems ROBOT GenericCan you trust all of your users all of the time? A typical end user receives 16 malicious emails each month, but only 17 percent of these phishing campaigns are reported to IT. Once an attack is underway, most organizations won’t discover the breach until six months later. A staggering amount of damage can occur in that time. Despite these risks, 93 percent of organizations are leaving their IBM i systems vulnerable to cybercrime. In this on-demand webinar, IBM i security experts Robin Tatam and Sandi Moore will reveal:

  • FORTRA Disaster protection is vital to every business. Yet, it often consists of patched together procedures that are prone to error. From automatic backups to data encryption to media management, Robot automates the routine (yet often complex) tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:

  • FORTRAManaging messages on your IBM i can be more than a full-time job if you have to do it manually. Messages need a response and resources must be monitored—often over multiple systems and across platforms. How can you be sure you won’t miss important system events? Automate your message center with the Robot Message Management Solution. Key features include:

  • FORTRAThe thought of printing, distributing, and storing iSeries reports manually may reduce you to tears. Paper and labor costs associated with report generation can spiral out of control. Mountains of paper threaten to swamp your files. Robot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing. Manage your reports with the Robot Report Management Solution. Key features include:

  • FORTRAFor over 30 years, Robot has been a leader in systems management for IBM i. With batch job creation and scheduling at its core, the Robot Job Scheduling Solution reduces the opportunity for human error and helps you maintain service levels, automating even the biggest, most complex runbooks. Manage your job schedule with the Robot Job Scheduling Solution. Key features include:

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed. Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

  • LANSASupply Chain is becoming increasingly complex and unpredictable. From raw materials for manufacturing to food supply chains, the journey from source to production to delivery to consumers is marred with inefficiencies, manual processes, shortages, recalls, counterfeits, and scandals. In this webinar, we discuss how:

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • Profound Logic Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application.

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: