As much as McNichols Co. manufactures and sells perforated steel and plastic products from it headquarters in Tampa, Fla., it simultaneously sells an equal amount of information.
Service and sales reps have to be fluid with the company's order entry system, which must be agile enough to keep up with constant customer demands for information on product size, color, material and composition.
Last year, it became apparent the company's 20-year-old legacy ordering application, written in the RPG (report program generator) language needed an overhaul -- and a shot of Java.
McNichols' RPG order entry app ran on IBM's AS/400 iSeries servers and called data from a DB2 database. Writing a new pick-me-up Java application was simple enough. Getting it to talk to the legacy RPG app and preserving the data investment was quite an integration challenge.
"Our information system is the lifeblood of our company," said Don Slocum, director of information services for McNichols. "We decided to rebuild our sales order management system and try to bring our staff up on Java."
McNichols stuck with IBM and used WebSphere, along with Java and XAware Inc.'s XA-iServer to connect the new application to the RPG app. The new data migration, integration and Web services platform is flexible enough to someday soon extend the company's order entry system to suppliers and customers on the Internet, Slocum said.
"It's a standard method to do I/O routines without having to custom code," Slocum said.
Slocum explained that the new platform enabled developers to create XML documents that treated multiple data sources as a single logical source. This permits the exchange of information between the two systems, partners and suppliers in a standard way.
"Our core competency is providing customers with information and doing it effectively, moving back and forth between applications," Slocum said. "One big challenge is going back and forth from the green screen to the Java GUI look and feels."
The two applications are now married, Slocum said. Customer inquiries make a database call on one application that is eventually passed to the other. Once a call is made, a trigger is set off on the Java side, for example, that says there's a similar file on the RPG side, Slocum said. Via XAware and IBM middleware, updates are made on both sides.
Once technological issues were resolved, the next issue was bringing staff up to speed on Java.
"Most of our staff is RPG-based and had to go from a process-oriented language to object-oriented language," Slocum said. "We were not as successful as we hoped."
Slocum had to bring in Java programmers with Web services experience and had to retrain his RPG experts in writing XML business documents.
"You're not getting a lot of RPG pros coming out of college," Slocum said.
Slocum added that roles in the browser-based Java application in this initial release were restricted to managers who would be able to manage accounts and process credit requests in addition to sales information. The next iteration of the application will automate special customized orders, something that is currently done manually. The application will eventually be extended to customers and suppliers over the Web. Customers, for example, will be able to see their purchase profile and retrieve old quotes and transaction records. They will also be able to see what other customers with similar needs have purchased in the past.
"We hope to take this to the Web for novice customers," Slocum said. "This system is flexible enough to extend it to customers and suppliers."