Inventory and Order System

Overview

There are three general types of data that are involved in an order-processing system:
  • customer information, which includes name, address, and a customer number that uniquely identifies the customer
  • inventory information, which tracks the amount of each item that is in stock at any specific time
  • orders information, which identifies items in inventory that a customer has placed an order for

Customer Information

In order to simplify this example, the application in this section does not include a customer data set. This SCL program, which is expanded for use in an actual order-processing system, would open the customer data set during the FSEINIT step and close it during the FSETERM step.
The customer data set is ideal to access through a SAS/SHARE server to keep information up-to-date, such as customers' address changes, and contact information.
For the purpose of entering orders, the customer data set would usually be opened for read-only access through the server, because customer information is not usually updated at the time an order is taken.
Updating the customer data would ordinarily be done by using a second FSEDIT application that would also access the data set through the server. That application would be available to customer service representatives and administrative personnel.

Inventory Information

In this example, the inventory data is accessed through a SAS/SHARE server. The data is completely hidden from the user of the order-entry application. The purpose of this example is to show how to maintain information automatically in a SAS data set.
The inventory file is also ideal for accessing through a SAS/SHARE server to keep the available quantity of each item current.
In the order-processing example, the inventory data set is opened for update access through the server. Read-only access to the inventory data set might be given for the reporting programs that are run either nightly or on-demand, which would also access the data set through the server. The inventory reporting and analysis programs are not included in this example.
In a mature inventory-management system, there would be additional access to the inventory data by employees who receive merchandise. This example shows only the order-processing side (the “inventory depletion” process), but it is important to remember that replenishing inventory must also take place. Accessing the inventory data by using a SAS/SHARE server allows both the ordering and the receiving operations to maintain current information in the inventory file.

Orders Information

The orders data set is a series of transactions. When a product is ordered, that event is recorded in the orders data set. This makes the orders data set a time-based record of events, which is quite different from the type of information that is maintained in the customer and the inventory data sets.
Accessing the orders data set through a SAS/SHARE server allows all order information to be captured in a single file. This enables simplified reporting and analysis of the orders data, which can be performed on current information at any time.
In this example, the data set ORDERS is updated by the users of the application. Reporting and analysis of the orders data, which is not shown here, can be accomplished with read-only access to the data set ORDERS through the server.