Integrated business-to-business Web commerce and business automation system6115690
Abstract
A software system business-to-business Web commerce (Web business, or e-business) and automates to the greatest degree possible, in a unified and synergistic fashion and using best proven business practices, the various aspects of running a successful and profitable business. Web business and business automation are both greatly facilitated using a computing model based on a single integrated database management system (DBMS) that is either Web-enabled or provided with a Web front-end. The Web provides a window into a "seamless" end-to-end internal business process. The effect of such integration on the business cycle is profound, allowing the sale of virtually anything in a transactional context (goods, services, insurance, subscriptions, etc.) to be drastically streamlined.
Claims
What is claimed is:
1. An automated end-to-end business process for product sales that uses a relational database management system, the process comprising the steps of:
a first user inputting a sales record to the database for an order of a customer;
automatically generating a customer invoice;
a second user inputting a customer payment record to the database, wherein system privileges of the first user and the second user are at least partially mutually exclusive;
automatically determining a status of the customer payment as reconciled or not reconciled; and
during each of the foregoing inputting steps, qualifying user inputs using experiential constraints, based on the then-current state of the database as a whole.
2. The method of claim 1, wherein the process uses a single database described by a single database schema.
3. The method of claim 1, wherein the business process is based on a virtual-inventory model for the sale of tangible goods, the process comprising the further steps of:
a third user placing a purchase order for goods in accordance with the sales record and inputting purchasing information to the database;
automatically generating a vendor invoice record; and
a fourth user receiving the goods.
4. The method of claim 3, comprising the further step of, during the inputting of purchasing information, qualifying user inputs using experiential constraints, based on the then-current state of the database as a whole.
5. The method of claim 3, wherein system privileges of the first, second, third and fourth users are at least partially mutually exclusive.
6. The method of claim 3, wherein the database contains a Sales Record file, a related Items Sold file containing a single consolidated record for a quantity of multiple identical items, and a related Item Details file containing a separate record for each separate item of said quantity, wherein receiving the goods comprises:
automatically determining a group of Sales Records having Items Sold not yet fully received;
selecting within the database a Sales Record from said group of Sales Records and selecting from the Sales Record a related Items Sold record; and
for each separate item of said quantity, inputting a serial number from an item of the physical goods into a field within a separate Item Details record.
7. The method of claim 3, wherein the at least some of the goods require assembly or installation, the process comprising the further steps of:
during order entry, the first user inputting installation instructions and identifying items required to be shipped together to the customer.
8. The method of claim 7, comprising the further step of, during the inputting of installation instructions, qualifying user inputs using experiential constraints, based on the then-current state of the database as a whole.
9. The method of claim 7, comprising the further step of automatically adding to the customer invoice an installation charge.
10. The method of claim 7, comprising the further step of, when an item together with any other item required to be shipped together with it to the customer have been received, automatically generating at least one of a shipping worksheet and a packing slip.
11. The method of claim 3, comprising the further steps of:
inputting to the database actual vendor invoice information; and
automatically determining a status of the vendor invoice as reconciled or not reconciled.
12. The method of claim 11, comprising the further step of automatically determining a detailed status of non-reconciled vendor invoices in accordance with a plurality of categories of discrepancies.
13. The method of claim 12, wherein a vendor invoice may belong to a plurality of categories of discrepancies, the method comprising the further step of sorting vendor invoices in accordance with a hierarchy of discrepancies such that a vendor invoice having both a discrepancy higher in the hierarchy and a discrepancy lower in the hierarchy is sorted into a group of vendor invoices belonging to the discrepancy of the higher category.
14. The method of claim 13, comprising the further steps of:
for a non-reconciled vendor invoice, inputting to the database a Vendor Expected Credit record;
offsetting an amount of the Vendor Expected Credit against the non-reconciled vendor invoice; and
changing the status of the non-reconciled vendor invoice to reconciled.
15. The method of claim 1, comprising the further steps of:
at intervals, performing a suite of database checks using experiential constraints;
detecting a condition requiring user attention;
identifying a user responsible for attending to the condition; and
automatically reporting the condition to the identified user.
16. The method of claim 15, comprising the further steps of:
detecting an error;
troubleshooting the error; and
adding to the system an additional experiential constraint to prevent future occurrences of the error.
17. The method of claim 1, comprising the further step of inputting to the database a Return Merchandise Authorization record relating to a sales record, the Return Merchandise Authorization record specifying one of a plurality of return types.
18. The method of claim 17, wherein return types includes a plurality of the following types: credit, replacement, and warranty.
19. The method of claim 17, comprising the further step of automatically completing selected fields of the Return Merchandise Authorization record as being not applicable in accordance with the specified return type.
20. The method of claim 17, comprising the further step of automatically grouping a sales record to which the Return Merchandise Authorization pertains with sales records having one or more items to be received.
21. The method of claim 20, comprising the further steps of:
receiving a returned item; and
automatically generating a credit memo for said returned item.
22. The method of claim 1, comprising the further steps of:
receiving a Return Merchandise Authorization request via a global computer network, the request specifying return type;
evaluating the request based on a plurality of stored criteria in accordance with the return type; and
if the applicable criteria are met, automatically assigning, and communicating to a user via the global computer network, a return authorization number.
23. The method of claim 1, wherein the sales record includes a ship-to address, the process comprising the further steps of:
automatically retrieving an applicable sales tax rate based on the ship-to address and generating a sales tax record; and
from a multiplicity of sales tax records pertaining to a tax reporting period, automatically generating a tax return.
24. The method of claim 1, wherein the sales record identifies a sales representative, the process comprising the further steps of:
automatically retrieving an applicable commission rate based on the sales representative; and
from a multiplicity of sales records pertaining to a pay period, automatically generating a commission total for each of a plurality of sales representatives.
25. The method of claim 1, comprising the further steps of:
identifying multiple persons each having a role in a sales transactions; and
computing separate commissions for each of said multiple persons.
26. The method of claim 1, comprising the further steps of:
at periodic intervals automatically posting general ledger accounting entries for transactions posted since the previous interval, including sales and customer payments; and
at a time determined by a user, automatically generating a financial statement indicative of at least one of profit/loss and cashflow.
27. The method of claim 26, wherein said periodic intervals are user-scheduled.
28. The method of claim 26, wherein said time is scheduled by the user in advance.
29. The method of claim 26, wherein said time is any time at which the user inputs a predetermined command.
30. The method of claim 1, comprising the further steps of, for each of said first user and said second user:
determining performance measurements quantifiable using data stored within the single database; and
automatically calculating and maintaining a history of said performance measurements.
31. The method of claim 1, wherein sales record information is accessible remotely via a global computer network by authorized users.
32. The method of claim 1, wherein customer invoice information is accessible remotely via a global computer network by authorized users.
33. The method of claim 32, comprising the further step of displaying for an open invoice detailed payment status information.
34. The method of claim 32, comprising the further step of displaying for an open invoice detailed payment status information including a reason for non-payment.
35. The method of claim 1, wherein vendor invoice information is accessible remotely via a global computer network by authorized users.
36. A method of integrating business automation across multiple business domains and automatically reflecting automated business activities of one business domain within another business domain, the method comprising the steps of:
providing a Web-enabled, client/server relational database management system storing a database described by a single database schema including files belonging to each of a first business domain dealing with products and a second business domain dealing with payments; and
a user making modifications to a record within a file belonging to the first business domain, the database management system in response thereto automatically reflecting said modifications within files belonging to the second business domain.
37. The method of claim 36, wherein the database further includes files belonging to a third business domain dealing with financial performance, the database management system, in response to a user making modifications to a record within a file belonging to one of the first and second business domains, automatically reflecting said modifications within a file belong to the third business domain.
38. The method of claim 37, wherein the database further includes files belonging to a fourth business domain dealing with personnel, wherein the database management system automatically alters a record of an employee or contractor having responsibilities within one or more of said first, second and third business domains by referencing records within files belong to said one or more of said first, second and third business domains.
39. The method of claim 36, comprising the further step of, at regular intervals, performing cross-checks between records of files belonging to different business domains.
40. The method of claim 39, wherein said cross-checks are performed during a nightly update routine.
41. The method of claim 36, comprising the further step of establishing and enforcing a division of responsibilities between different users of the database management system.
42. The method of claim 41, wherein each user within a group of users is assigned to a single business domain and is allowed to change only records of files belonging to that business domain.
43. A method of business-to-business Web commerce between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, the method comprising the steps of:
storing user privileges for a plurality of user authorized by the purchaser to act on its behalf;
authenticating and determining a privilege level of a user;
the user entering product parameters;
identifying products in accordance with the product parameters and displaying product information for the products;
the user selecting at least one product from the displayed product information and requesting a price quote for the product;
producing and displaying a price quote for the product, the price quote including a quote number; and
storing the price quote within the database for future reference.
44. The method of claim 43, wherein the process uses a single database described by a single database schema.
45. In a system for business-to-business Web commerce system between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, a method of maintaining and updating a multi-vendor product list, comprising the steps of:
a user selecting a baseline vendor;
electronically retrieving product information from the baseline vendor;
electronically retrieving product information from at least one additional vendor;
comparing product information from said additional vendor with product information from the baseline vendor; and
if an identical product is offered by both the baseline vendor and said additional vendor, consolidating information from both the baseline vendor and the additional vendor into a common record for display.
46. The method of claim 45, wherein the process uses a single database described by a single database schema.
47. The method of claim 45, further comprising:
producing a baseline electronic catalog;
updating the baseline electronic catalog to produce an updated baseline electronic catalog;
performing comparison of the updated baseline electronic catalog and a prior baseline electronic catalog; and
based on the comparison flagging at least one of new products, products the price of which has changed, and discontinued products.
48. The method of claim 47, wherein the electronic catalog includes different categories of items including at least component items and items that receive component items.
49. The method of claim 47, wherein at least one of new products, products the price of which has changed, and discontinued products are flagged within an Approved Products List of a specific customer.
50. A method of business-to-business Web commerce between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, the method providing for merchandise returns, comprising the steps of:
storing in the database a record for each item sold;
authenticating a user;
using a flexible product identification procedure, the user entering information identifying at least one item of merchandise to be returned for which a record is stored in the database;
using the record stored in the database, creating a return record and notifying a representative authorized by the supplier to approve returns;
approving the return and assigning a Return Merchandise Authorization number to the return record; and
communicating to the user the Return Merchandise Authorization number.
51. The method of claim 50, wherein the process uses a single database described by a single database schema.
52. The method of claim 50, wherein communicating comprises sending to the user an electronic message including the Return Merchandise Authorization number.
53. The method of claim 50, wherein the user entering information identifying at least one item of merchandise to be returned occurs via the Web.
54. In a system for business-to-business Web commerce system between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, a method of tracking financial information on a real-time basis and automatically generating a general ledger of accounts, the method comprising the steps of:
automatically posting transactions by making corresponding general ledger entries continuously or at programmed intervals; and
automatically posting adjusting entries when records pertaining to transactions that have already been posted are modified.
55. The method of claim 54, wherein the process uses a single database described by a single database schema.
56. In a system for business-to-business Web commerce system between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, a method of processing accounts, the method comprising the steps of:
storing in the database customer invoices and vendor invoices;
identifying open vendor invoices;
applying a set of rules to the open vendor invoices and related records, including classifying and grouping the open vendor invoices in accordance with a hierarchy of experiential classifications; and
forming a determination based on the set of rules whether or not a group of open invoices should be paid.
57. The method of claim 56, wherein the process uses a single database described by a single database schema.
58. In a system for business-to-business Web commerce system between a first business acting as supplier and a second business acting as purchaser, using a computer net including a relational database server, a method of employee evaluation comprising the steps of:
collecting activity information as activities occur and storing it in the database;
determining a computer-generated, data-based performance norm for an individual or entity; and
automatically producing an electronic evaluation report based on the activity information and the data-based norm.
59. The method of claim 58, wherein the process uses a single database described by a single database schema.
60. The method of claim 58, comprising the further step of communicating via a global computer network the electronic employee evaluation report via a global computer network to at least one of the employee to whom the electronic employee evaluation report pertains and authorized supervisory personnel.
61. The method of claim 58, further comprising displaying an evaluation report via the Web.
62. The method of claim 58, further comprising displaying for ready comparison activity information and resulting performance information, whereby the contribution of different activities to performance can be guaged by users.
63. In a relational database system, a method of displaying information, comprising the steps of:
for each of a plurality of base tables, identifying at least one related table;
providing a related switch GUI control displayed in conjunction with display of each of said plurality of base tables, for selecting a related table;
displaying records of one of said plurality of base tables;
a user selecting at least one record;
using said GUI control, said user selecting a related table;
performing a search to identify records in the related table that are related to said at least one record; and
displaying records of said related table identified by said search.
64. In a relational database business automation system, a method of displaying information so as to facilitate user manipulation and interaction, comprising the steps of:
producing a workscope/workflow structured display of complex database records each comprising multiple lines of text and pertaining to both a first party to a business transaction and a second party to the business transaction, the structured display constituting an integrated decision-making environment for a particular business function; and
providing a GUI control displayed in conjunctions with said workscope/workflow structured display of complex database records;
a user selecting at least one of said complex database records; and
the user activating the GUI control, wherein activation of the GUI control has at least one of the following effects: taking a prescribed action in relation to the selected record and changing at least one field of said record within said database; changing the display to a functionally-related display; and bringing up a pop-up screen through which data may be entered, changing at least one field of said record within said database, the pop-up screen only partially obscuring said workscope/workflow structured display.
65. A method of order fulfillment using a relational database system in which customer order information and vendor order information are stored, comprising the steps of:
displaying customer order items for which vendor orders have not been placed;
enabling a user to, in accordance with a user command, sort customer order items by the following categories: item sold, vendor and availability;
grouping a plurality of customer order items;
placing a single vendor order corresponding to a group of customer order items; and
refreshing the display so as to remove one or more groups of items from the display.
66. The method of claim 65, comprising the further steps of:
storing within the database information identifying items that must be shipped together;
grouping items having a backorder status;
placing vendor orders for customer order items having backorder status; and
removing from the display items that must be shipped together with an ordered item having backorder status.
67. The method of claim 65, comprising the further step of preparing records of ordered items so that the ordered items can be received.
68. The method of claim 67, comprising the further steps of:
receiving ordered items and changing item records to reflect receipt; and
preparing records of received items for installation.
69. The method of claim 68, comprising the further steps of:
installing received items; and
preparing records of installed items for shipping.
70. The method of claim 69, comprising the further steps of:
shipping installed items; and
changing item records to reflect shipment.
71. The method of claim 68, wherein placing the vendor order comprises communicating corresponding vendor order information to the appropriate vendor via a global computer network.
72. The method of claim 65, wherein said grouping includes both automatic grouping based on customer instructions obtained via the Web and manual grouping performed for convenience and efficiency in purchasing.
73. The method of claim 72, wherein said grouping includes logistics-derived. implicit grouping.
74. A method of handling sales returns over a global computer network, comprising the steps of:
receiving a Return Merchandise Authorization request via a global computer network, the request specifying return type;
evaluating the request based on a plurality of stored criteria in accordance with the return type; and
if the applicable criteria are met, automatically assigning, and communicating to a user via the global computer network, a return authorization number.
75. In a business-to-business automated Web commerce system, a method of specifying complex installation instruction regarding a plurality of purchase items using a graphical user interface, the method comprising the steps of:
selecting a first primary item;
selecting one or more secondary items to be installed with said first primary item;
selecting a second primary item; and
selecting one or more secondary items to be installed with said second primary item.
76. The method of claim 75 wherein selecting said items occurs via the Web.
77. An automated business process for product sales that uses a Web-enabled relational database management system to automate an integrated supply chain including a seller and a plurality of vendors, the process comprising the steps of:
a seller placing vendor orders and entering order information into the database, the orders being communicated to the vendors through a global computer network;
the seller receiving the orders in whole or in part and entering receiving information into the database;
the vendors accessing receiving information through the global computer network to ensure prompt receipt of orders;
the seller requesting return of selected order items; and
the vendors accessing return information through the global computer network and in response thereto communicating return merchandise authorization numbers to the seller through the global computer network.
78. The method of claim 77, wherein the process uses a single database described by a single database schema.
79. The method of claim 77, comprising the further steps of:
customers placing customer orders with the seller through the global computer network; and
customers accessing order tracking information through the global computer network.
80. The method of claim 79, comprising the further step of customers and vendors accessing invoice information through the global computer network.
81. A method of order fulfillment, comprising the steps of:
placing an order for a part;
entering the order within a Web-enabled relational database system;
tracking each significant event in the order fulfillment process within the relational database system; and
communicating the order status to at least one party via the Web.
82. The method of claim 81, wherein the order status is communicated using Web pull technology.
83. The method of claim 81, wherein the order status is communicated using Web push technology.
84. A method of automating an end-to-end business process using a software program running on a relational database system, comprising the steps of:
as data is entered into the relational database system, qualifying data entries in accordance with a stored knowledge base;
producing a workscope/workflow structured display of complex database records, the structured display constituting a decision-making environment for a particular business function, and displaying data together with GUI controls in such as way as to allow a user to readily change the status of a record within the relational database system in way determined by the stored knowledge base; and
based on the experience of users using the software program, altering the stored knowledge base so as to increase the stored knowledge base.
85. The method of claim 84, wherein data is entered only once at a limited number of controlled points of entry.
Description
BACKGROUND OF THE INVENTION
This application include a microfiche appendix containing a database structure diagram made up of 50 sheets 20 frames.
1. Field of the Invention
The present invention relates to business-to-business Web commerce and to business automation systems.
2. State of the Art
Web commerce may be defined as the use of a computer network, such as the Internet, to do business, such as buy and sell products or services. Although Web commerce is still in its infancy, relatively speaking, Web commerce is predicted by some to soon become the dominant mode of business practice. Web commerce allows business to move much more quickly, without the burden and cost of paperwork.
Despite the promise of Web commerce, current Web commerce software is typically of very limited capability. Most Web commerce is consumer-oriented rather than business-oriented. The tacit assumption is that the purpose of the Internet should be to enrich people's personal lives more than to enable business to move at light speed. Furthermore, typically each transaction is treated in isolation. No on-going course of business is assumed or facilitated.
Material management functions such as procurement represent a substantial expense and burden for medium and large businesses. Purchases are typically subject to approval at multiple levels. In the case of the purchase of a computer, for example, an employee might submit a purchase request to the employee's supervisor, who might approve the request and forward it to the MIS (Management Information Systems) department, which might approve the request and forward it to accounting for budgetary approval. The real cost of such a process is estimated to be as much as $100 per purchase request. Furthermore, the time required for such a process to be completed may be weeks or months. In the meantime, productivity may suffer.
Purchasing, moreover, is only part of the larger problem of material management. Once materials have been procured, typically they must be tagged, tracked and accounted for, both physically and in accounting terms such as depreciation, etc. The latter activities may either be conducted in an organized fashion, often at considerable expense, or haphazardly, with marginal effectiveness.
Existing Web commerce software is likewise fraught with problems for the selling company. When an order is placed through the Web, it typically results in a fax or email, information from which must be manually entered into an internal sales system that may or may not be linked to other closed systems such as accounting, human resources, purchasing, assembly, etc. Hence, once the entry is made, depending on the degree of automation, additional manual intervention may be required to achieve the desired final result, e.g., ship a product to a customer. The purchaser is typically unable to determine the status of an order without placing a call or sending an email. Moreover, order fulfillment is again only a part of the larger problem of total customer satisfaction (which is in turn only a part of the larger problem of running a successful, profitable business). Returns are bound to occur and must typically be handled manually, typically by a Return Merchandise Authorization (RMA) or traffic department. Also, some fraction of shipments are bound to be lost or damaged. Related insurance claims typically must also be handled manually both by the traffic and accounting departments. Even though the foregoing activities are closely related functionally, the mechanisms for handling these activities, whether manual or automated, are often ad hoc.
On a business-wide scale, the same is largely true: the various activities of the business, while they may be separately automated, are not automated in a unified, synergistic fashion. Most often, different departments each have separate database systems with the departments being linked by a local- or wide-area network. A person in one department obtains information from a different department by sending an email and requesting a report. Referring more particularly to FIG. 1, in accordance with a typical model of business automation, various departments (e.g., sales, sales support, customer service, accounting, purchasing, receiving, engineering, assembly, shipping) are separately automated but linked together by a computer network (e.g, LAN, WAN). Each department interfaces to multiple different departments in an essentially manual fashion but using modern electronic communications tools--phone, fax, email, computer hardcopy, etc. Comparison of the resulting overall business process to a Rube Goldberg invention is apt, if mildly exaggerated. The process entails repeated transmission of duplicate information to different departments and repeated transmission of additional information and instructions to different departments on an as-needed basis. The party transmitting the information controls the amount and quality of information conveyed. The party receiving the information has no control over the information or the quality of the instructions received but rather is entirely dependent on the party transmitting the information. Duplication occurs both within departments and between departments. An external influence to the system (a call from a customer or vendor, a new customer account, a ruffled employee) can and often does cause a flurry of activities, but often produces less-than-commensurate positive results because of the inherent inefficiency of the system. The process, because it is ill-defined, is not easily reversible when an error has been made.
The foregoing model results in the fragmentation of information--"the right hand does not know what the left hand is doing." Information is transported from one place to another, either in hardcopy form, necessitating re-entry, or in such electronic form as to require substantial massaging, and with substantial latency such that by the time the information is to be used it is already outdated. A business executive, for lack of readily-available, accurate, verifiable information in usable form, must then rely heavily on subordinates to obtain a picture (hopefully accurate) of what is happening inside the company. Considerably employee time may be spent gathering historical data to satisfy the need for management information. The same factors that hamper management performance may also cause performance at lower levels within the company to suffer. Employees may lack timely information regarding critical tasks that need to be performed. For lack of timely information regarding returns, for example, or some other aspects of operations, accounting personnel may pay invoices that should in fact not be paid.
The lack of readily-available, verifiable information in usable form is most pronounced in relation to financial information. In the case of a sales company doing a substantial volume of business, for example, preparation of a state sales tax return may take ten man-days or more. An audit may take a similar amount of preparation. Closing the books on an accounting period is itself an arduous task. The time requirements and challenges posed by month-end and year-end closings are all-too-familiar to virtually all in-house accountants. Despite these heroics, the inherent latency of the process diminishes the value of the results. A finalized June statement, for example, might be received at the end of July or the beginning of August, hampering the ability to react quickly to changing business conditions.
For lack of readily-available, verifiable information in usable form, employee evaluation is often performed more on the basis of perception than objective reality. The appearance of performance then becomes at least as important as real performance. Employee performance and employee morale may suffer as a result.
Numerous "high-power" database application software packages exist in the marketplace, from such industry leaders as SAP, Peoplesoft, BAAN, and Oracle. The solutions of each of these vendors have strengths and weaknesses. SAP, for example, although strong in the area of fixed asset management and financials, does not provide shipping and receiving functions. To automate these functions requires the use of separate software. Furthermore, Web integration is problematic. BAAN is strong in the areas of shipping/receiving, manufacture and assembly, but is limited in the areas of fixed asset management and material handling. In particular, BAAN is bound by conventional notions of real inventory--an item must physically be in stock before it can be ordered (as contrasted with the concept of virtual inventory, explained more fully hereinafter). Peoplesoft offers strong human relations functions but is not strong in "back-end" functions. Software packages from Peoplesoft and BAAN are therefore often linked together to provided a more complete solution. Similarly, software from SAP may be linked to software from BAAN. Oracle offers discrete modules for almost all of the functions offered by the other software packages. The modules must be linked together in a laborious process, however. None of these software packages have a Web-centric design, nor has any been used to successfully implement an automatic ene-to-end business process, even in large corporations having no lack of resources.
Web-centric "e-business solutions" are offered by Pandesic (Intel and SAP), Actra (Netscape) and other (typically early-stage) companies. In the case of Pandesic, early promotional materials indicate a distinct consumer orientation as opposed to business-to-business. A conventional real inventory model is followed in which product must be warehoused and on-hand in order to allow the product to be ordered. Furthermore, Web operations are segregated from non-Web operations, necessitating duplication. In the case of Actra, a portfolio of commerce software, including legacy application integration modules, are designed to "bridge gaps between enterprises and applications," enabling business-to-business transactions, buyer-side and seller-side procurement, consumer on-line Internet storefronts, and commercial Internet publishing. This "gap-bridging" approach likewise entails substantial duplication.
Dell and Cisco each sells computer and networking equipment directly to consumers over the Web using configuration and order software developed by outside third parties. Business-to-business features, such as invoices, RMAs (particularly automatic "instant" RMAs) are lacking. The software does not provide an end-to-end Web-business solution.
A need therefore exists for software that enables end-to-end, business-to-business Web commerce and that automates to the greatest degree possible, in a unified and synergistic fashion, the various aspects of running a successful and profitable business. The present invention addresses this need.
SUMMARY OF THE INVENTION
The present invention, generally speaking, provides software that enables end-to-end, business-to-business Web commerce (Web business, or e-business) and that automates to the greatest degree possible, in a unified and synergistic fashion and using best proven business practices, the various aspects of running a successful and profitable business. Web business and business automation are both greatly facilitated using a computing model based on a single integrated database management system (DBMS) that is either Web-enabled or provided with a Web front-end. The Web provides a window into a "seamless" end-to-end internal business process. The effect of such integration on the business cycle is profound, allowing the sale of virtually anything in a transactional context (goods, services, insurance, subscriptions, etc.) to be drastically streamlined. In the case of a just-in-time product reseller, for example, a comprehensive product list is updated electronically in real time or at regular intervals from various sources (e.g., by file download, over the Web, or from CD or floppy distributions or other media or even manual input). A graphical Web interface allows a user to obtain a quote based on the product list. The quote is assigned a quote number and saved in the DBMS and may be retrieved and viewed at a later date. Based on the quote, a user with appropriate Web-verifiable authority may place an order on behalf of a company in accordance with a pre-existing agreement with the company. An employee of the seller, using the same DBMS, purchases product to fill the order. When the product is received, information regarding receipt of the product is entered into the DBMS. Orders are assembled, shipped and billed, all using the same DBMS. Customers can retrieve previous quote records and view order and shipment status via the Web. Customer invoices are automatically generated upon shipment. When a customer payment is received, details concerning the payment are entered into the DBMS. Vendor invoices and payments are also handled using the DBMS, and both customers and vendors can view payment status--invoice, credit (from returns), etc.--via the Web, allowing paper invoice copies to be dispensed with if desired. Returns are provided for and may be return of an entire piece of equipment or replacement of a warranted component part, and replacements may be electronically tracked. Parts tracking saves employee time that would otherwise be spent responding to customer inquiries, and also contributes to customer satisfaction through the convenient availability of timely information.
Throughout the foregoing process, a nightly update process is performed in which consistency checks are performed and in which accounting information (including sales tax information) is collected, journal entries made, and general-ledger entries posted. When records are edited, they are flagged to be checked during the nightly update so that adjusting entries may be made if necessary. At any time, the update process may be run and an accounting period closed. Real-time, audit-ready financial information accurate up to the day or up to the hour is available within minutes at the touch of a button without the need for a highly-trained accountant. A novice can perform many of functions typically performed by accountants, with periodic review and supervision by an accountant. Because the DBMS is Web-enabled, given the appropriate privileges, a complete up-to-the-minute view of every aspect of a business is available from anywhere in the world. Telecommuting is greatly facilitated, with its attendant cost savings. Furthermore, factual evaluation of employee performance, whether of a telecommuting employee or an office-based employee, is greatly facilitated by statistical analysis of accumulated historical performance data (tasks, projects, assignments, reports).
Driven by the goals of enabling widespread telecommuting and global cyberspace trading, the single database business process software provides parallel information access to all users. All users have access to all information except information determined by management to be of a confidential nature. The system provides built-in assurance of prioritized workflow and best business practice (the optimum known way that a business process should flow) based on self-correcting business knowledge algorithms. The system draws upon a knowledge base to prevent mistakes anticipated by the software designer as well as mistakes that have occurred in the past and have been corrected for by adding to the knowledge base, which is continually accumulating. (In the case of conventional programs, program rewrites often result in both improvements and decided slips backward.) The system lists and prioritizes uncompleted work that needs to be followed up. All user activities are tracked, and users are held accountable. Every activity performed by users are tracked statistically. Problem sources may therefore be identified. Precision training and factual performance review are made possible, significantly empowering users in their assignments.
The software provides for business scalability (as opposed to mere data processing scalability), minimizing the growing pains experienced by rapidly growing companies. In growing companies, as the responsibility for a process becomes divided among more and more people, becoming more and more diffuse, communication between group members becomes more and more difficult and the process becomes increasing difficult to manage. The present invention, in particular, makes workflow and work quality substantially immune to changes in the number of employees and the experience level of employees. Work discipline and organization is enforced by, and teamwork and communication between users facilitated by, the database. The ease of use of the database system and the knowledge base incorporated within the system minimizes the need for extensive employee training and allows for flexible employee roles. Business scalability also entails dramatically increased productivity through automated computer assistance, allowing business growth to greatly outstrip personnel growth. One example of business scalability is in the area of purchasing. Orders are grouped for purposes of purchasing such that the number of purchase orders to vendors does not increase as the number of orders received.
Conceptually, the invention allows for the integration and time-scale compression of what have heretofore been largely independent, human-dependent business processes. Business processes have typically been organized into separate business domains, chiefly including a products domain (e.g., engineering, manufacturing, purchasing, shipping, receiving, returns), a payments domain (e.g., accounts receivable, accounts payable), a financial performance domain (e.g, general ledger, financial statements, tax returns) and a personnel domain (e.g., employee evaluation). In accordance with one aspect of the invention, files for the automation of these various business domains are integrated as part of a single database schema within a single database management system run on one or multiple servers. There results a very tight integration of the foregoing activities and other derivatives of those activities such as product forecasting and cash-flow analysis. In particular, a universal financial report and trend report generator provides for general single or multiple General Ledger (GL) account code analysis including sales, cash flow and material.
Time-scale compression of the resulting integrated business automation process is achieved in two ways. First, the single database management system is Web-enabled, providing access anytime, anywhere. Second, triggers within the single database management system propagate activity from one business domain to a succeeding business domain (e.g., from shipping in the products domain to accounts payable in the payments domain) without duplication of human efforts. Data can only be entered once and is not ordinarily allowed to be changed or re-entered. Data entry is guided by a built-in best-practice knowledge base.
The integrated business automation process may be easily modularized if desired by restricting access to only files belonging to selected business domains. Hence, unlike conventional business automation suites that provide separate software modules that may be acquired separately and linked together, in the case of the present integrated business automation process, a customer receives everything but may only pay for be given access to a subset of files--e.g. AP/AR files. Later the customer may decide to pay for added capabilities. Such a change in capabilities may be readily administered remotely through the Web. In this manner, the customer is able to "pick and choose" the capabilities that the customer wants to use.
An outside Web user may also pick and choose the capabilities that the user wants to use. For example, orders may be placed by phone or fax but tracked via the Web. Or a user may use the Web only to check the amount owed on open invoices. Others user may use the Web from start to finish, to order products, track orders, track payments, etc.
Extensive measures are taken to ensure that the integrated business process is, to the greatest extent possible, error-free. Only a limited number of controlled entry points to the system are provided. At each entry point, entry validation is performed at the time of entry. Because the business process is integrated, validation may be more extensive and hence more effective than in typical systems. A nightly update process is also performed is which checks are made, including cross-checks between records of files belonging to different business domains. The system is in effect a closed system where all entries must balance appropriately. The nightly update is able to catch and flag errors (or possible errors) that may have occurred despite entry validation, including hardware or system errors, software bugs, and human errors. As errors become apparent that have escaped detection by the system, the foregoing mechanisms may be readily revised to prevent future such occurrences. Programmed process intelligence therefore continually increases as errors are detected, flagged, and trouble-shooted so as to add to the wealth of the knowledge base and improve the process methodology.
The integrated processes also automates returns and credits both on the customer side and the vendor side. Returns and credits may be necessitated by user errors that go undetected by the system, by overcharges for freight, or numerous other circumstances. Return requests, Return Merchandise Authorizations, credit memos and accounting adjustments may all be handled electronically.
BRIEF DESCRIPTION OF THE DRAWING
The present invention may be further understood from the following description in conjunction with the appended drawing. In the drawing:
FIG. 1 is a block diagram illustrating conceptually a conventional business process;
FIG. 2 is a block diagram illustrating conceptually an automated business process in accordance with the present invention;
FIG. 3 is a generalized block diagram of a system for business-to-business Web commerce in accordance with an exemplary embodiment of the invention;
FIG. 4 is an illustration of a Web Products Search screen display;
FIG. 5 is an illustration of a Web Product List screen display;
FIG. 6 is an illustration of a Web Product Shopping screen display;
FIG. 7, including FIG. 7A, FIG. 7B and FIG. 7C, is an illustration of a Web Quote screen display;
FIG. 8 is an illustration of a Quote screen display wherein a window containing any Web user special request is displayed;
FIG. 9 is an illustration of a corresponding MWS screen display wherein the same window containing Web user special requests is displayed;
FIG. 10 is an illustration of a Products and Quotes screen display in accordance with an alternative Web user interface design;
FIG. 11 is an illustration of a Products--Groups and Categories screen display;
FIG. 12 is an illustration of a Products--Single Manufacturer Input screen display;
FIG. 13 is an illustration of a Products Search screen display;
FIG. 14 is an illustration of a Products Search/APL screen display;
FIG. 15 is an illustration of a Products Search/Core Products screen display;
FIG. 16 is an illustration of a Quote Lookup screen display;
FIG. 17 is an illustration of a Find Quote screen display;
FIG. 18 is an illustration of a Quote screen display in accordance with an alternative Web user interface design;
FIG. 19 is an illustration of an Installation--Selection screen display;
FIG. 20 is an illustration of a further installation screen display;
FIG. 21 is an illustration of still a further installation screen display;
FIG. 22 is an illustration of a Return Merchandise Request screen display;
FIG. 23 is an illustration of a Change RMA Ship-To Address screen display;
FIG. 24 is an illustration of a Returns--Order Parts screen display;
FIG. 25 is an illustration of a first-level Tracking screen display;
FIG. 26 is an illustration of a Tracking--Sales Order Status screen display;
FIG. 27 is an illustration of a search results screen display;
FIG. 28 is an illustration of a further Tracking screen display displaying freight carrier and tracking information;
FIG. 29 is an illustration of a linked-to UPS tracking screen display;
FIG. 30 is an illustration of a further Tracking screen display displaying ship-to address information;
FIG. 31 is an illustration of a Tracking--Return Product and Service Part Status screen display;
FIG. 32 is an illustration of a further Tracking screen display displaying more search options;
FIG. 33 is an illustration of still a further Tracking screen display displaying search results;
FIG. 34 is an illustration of a Tracking--Product Purchase History screen display;
FIG. 35 is an illustration of a further Tracking screen display displaying search results;
FIG. 36 is an illustration of a Tracking--Product Return History screen display;
FIG. 37 is an illustration of a further Tracking screen display displaying search results;
FIG. 38 is an illustration of a Tracking--Accounting Information screen display;
FIG. 39 is an illustration of a Customer Invoice screen display;
FIG. 40 is an illustration of a Customer Invoice Search Option screen display;
FIG. 41 is an illustration of a Customer Invoice Detail screen display;
FIG. 42 is an illustration of a Vendor Invoice screen display;
FIG. 43 is an illustration of a Vendor Invoice Search Option screen display;
FIG. 44 is an illustration of a Vendor Invoice Detail screen display;
FIG. 45 is an illustration detailing the authority of various internal users with respect to security parameters in accordance with an exemplary embodiment;
FIG. 46 is a diagram of a typical lineage (authority) tree;
FIG. 47 is an illustration of a database customer screen display;
FIG. 48 is an illustration of a company price list screen display;
FIG. 49 is an illustration of one of a series of dialogs used to set Web authority for an employee of a customer;
FIG. 50 is an illustration of another of a series of dialogs used to set Web authority for an employee of a customer;
FIG. 51 is an illustration of another of a series of dialogs used to set Web authority for an employee of a customer;
FIG. 52 is an illustration of another of a series of dialogs used to set Web authority for an employee of a customer;
FIG. 53 is an illustration of another of a series of dialogs used to set Web authority for an employee of a customer;
FIG. 54 is an illustration of a dialog used to confirm employee information at the conclusion of Web authorization;
FIG. 55 is an illustration of the corresponding screen display as shown in FIG. 48, following Web authorization;
FIG. 56 is a block diagram of a conventional Web commerce computer architecture in which different functions are automated on different computing platforms, necessitating multiple interfaces;
FIG. 57 is a block diagram of the present Web commerce computer architecture in which all functions are automated on a single Web-enabled database, necessitating only a single interface;
FIG. 58 is an illustration of a partial database schema of one implementation of the system of FIG. 3, showing primary files and relationships;
FIG. 59 is a block diagram illustrating an automated business process in accordance with an exemplary embodiment of the invention;
FIG. 60 is an illustration of a Sales-MWS screen display;
FIG. 61 is an illustration of a Quote screen display;
FIG. 62 is an illustration of a Products screen display;
FIG. 63 is an illustration of a MWS screen display;
FIG. 64 is an illustration of a Purchasing view of a PSRI (Purchasing/Shipping/Receiving/Installation) screen display;
FIG. 65 is an illustration of a Receiving view of the PSRI screen display;
FIG. 66 is an illustration of an Installation view of the PSRI screen display;
FIG. 67 is an illustration of a Shipping view of the PSRI screen display;
FIG. 68 is an illustration of a PSRI Item Detail screen display;
FIG. 69 is an illustration of an Expedite view of the PSRI screen display;
FIG. 70 is an illustration of an Ordered Not Received screen display;
FIG. 71 is an illustration of a Received Not Shipped screen display;
FIG. 72 is an illustration of an Expedite pop-up, allowing expedite status to be set from a MWS screen display;
FIG. 73 is an illustration of an RMA screen display;
FIG. 74 is an illustration of an Add RMA screen display used to initially create an RMA;
FIG. 75 is an illustration of an RMA add records screen display used to add information to an RMA;
FIG. 76 is an illustration of an RMA Automatic Request Completion file;
FIG. 77 is an illustration of an RMA Automatic Approval Limit file;
FIG. 78 is an illustration of a Customer RMA Automatic Approval file;
FIG. 79 is an illustration of a Vendor RMA Automatic Approval file;
FIG. 80 is an illustration of a Manufacturer RMA Automatic Approval file;
FIG. 81 is an illustration of a Web page used to automatically provide a customer with an RMA number in accordance with the foregoing automatic approval process;
FIG. 82 is an illustration of a Sales Tax Register screen display, including formulas used to calculate figures to be entered within each line of a sales tax return;
FIG. 83 is an illustration of a Customer Invoices screen display;
FIG. 84 is an illustration of the Customer Invoices screen display showing collections information within a pop-up window;
FIG. 85 is an illustration of the Customer Invoices screen display showing collections information by customer within a pop-up window;
FIG. 86 is an illustration of a Customer Payments screen display;
FIG. 87 is an illustration of an OverUnderPay screen display;
FIG. 88 is an illustration of an OverUnderPay details screen display;
FIG. 89 is an illustration of a Vendor Invoices screen display;
FIG. 90 is an illustration of an AP Add Invoices screen display;
FIG. 91 is an illustration of a Vendor Invoice display;
FIG. 92 is an illustration of a Daily Vendor Verification screen display;
FIG. 93 is an illustration of a Vendor Payment Register screen display;
FIG. 94 is an illustration of an Add Invoices screen display having superimposed thereon a dialog window used to enter the period for a freight bill;
FIG. 95 is an illustration of an Accounting Setup defaults screen display;
FIG. 96 is an illustration of a display screen used to add an account to a Chart of Accounts file;
FIG. 97 is an illustration of a Chart of Accounts screen display;
FIG. 98 is an illustration of a Chart of Accounts--Account Detail screen display;
FIG. 99 is an illustration of an Accounts Receivable Customer Setup screen display;
FIG. 100 is an illustration of an Accounts Receivable screen display;
FIG. 101 is an illustration of an Accounts Receivable--Account Detail screen display;
FIG. 102 is an illustration of an Accounts Payable Partner Setup screen display;
FIG. 103 is an illustration of an Accounts Payable screen display;
FIG. 104 is an illustration of an Accounts Payable--Account Detail screen display;
FIG. 105 is an illustration of an account distribution pop-up screen used to allocate an invoice amount between different accounts;
FIG. 106 is an illustration of a General Journal output screen display;
FIG. 107 is an illustration of General Journal input screen display;
FIG. 108 is an illustration of a screen display used for financial report definition;
FIG. 109 is an illustration of a resulting financial report;
FIG. 110 is an illustration of a screen display used for trend report definition;
FIG. 111 is an illustration of screen display including a dialog used to select trend frequency;
FIG. 112 is an illustration of screen display including a window in which trend report data are displayed;
FIG. 113 is an illustration of a trend report graph screen display;
FIG. 114 is a block diagram of a human resource infrastructure for a virtual organization performance evaluation model;
FIG. 115 is an illustration showing in greater detail portions of the human resource infrastructure of FIG. 114;
FIG. 116 is an illustration of a file structure used to track all performance metrics of interest;
FIG. 117 is an illustration showing in greater detail the Factual Measurement Review process of FIG. 115;
FIG. 118 is an illustration of a seris of selection menus used to select an employee for whom a factual employee evaluation report is to be displayed;
FIG. 119 is an illustration of screen displays used to display factual performance analysis results in accordance with an exemplary embodiment of the invention;
FIG. 120 is an expanded view of the multiple period screen display of FIG. 119;
FIG. 121 is an illustration of a dialog displayed as a result of qualification of user inputs during the course of adding invoices;
FIG. 122 is an illustration of a further dialog of a similar type as that of FIG. 121;
FIG. 123 is an illustration of yet a further dialog of a similar type as that of FIG. 121;
FIG. 124 is a partial illustration of a pop-up menu of options available during vendor invoice display;
FIG. 125 is a partial illustration of a pop-up menu of options available during vendor invoice display, showing options not shown in FIG. 124;
FIG. 126 is an illustration of a pop-up menu of options available during customer invoice display;
FIG. 127 is an illustration of a pop-up menu of options available during display of items sold;
FIG. 128 is an illustration of a pop-up menu of options available during display of sales records; and
FIG. 129 is a block diagram illustrating a knowledge base, the expression of the knowledge base in screen displays of the present system, and a manner in which the knowledge base is increased.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Architecture
Referring now to FIG. 2, the present automated business process may be imagined as a kind of information assembly line. A first system user, or "information worker," having for example a Sales assignment or activity focus, initiates an automated, end-to-end business process by entering information into a client/server single relational database, which forms a common hub of the automated business process. The user's entry is qualified, or "quality checked," as represented by a checkvalve. Such qualification is "experiential," i.e., derived from actual business experience, and differs qualitatively from the type of data validation typically performed in database systems. If the user's entry fails scrutiny by the system, it cannot be committed to the database. Similarly, the business process cannot continue to the next user. As a result in part of such experiential qualification, verifiable and usable management and enterprise information may be made readily available.
In the case of conventional systems, by contrast, a team of software engineers write an application based on input from groups of users from different departments. The users, however, cannot anticipate the need for various features prior to using the software. Furthermore, the conception of the programmers may often differ significantly from that of the users. The result often leaves much to be desired. Updates are delayed until the next version of the software, at which point the same cycle repeats. Meanwhile, users suffer. Furthermore, because different users have different concerns, little consideration is given to the up-stream and down-stream effects of different user's actions. There results a "disconnect" between the behavior of the system and day-to-day real-world needs.
In the present system, qualification of user inputs has multiple facets. First, each user is accorded limited access privileges. An authority check is therefore performed to ensure that the user is authorized to make the entry being attempted. Second, the entry is checked in accordance with business rules that embody best practice as determined from an analysis of expected parameters and how various values of those parameters affect possible outcomes downstream. Thirdly, entries, even after then are committed to the database, are subjected to intelligent consistency checks in order to detect discrepancies and provide feedback to allow for correction. If input qualification is successful, then succeeding events in the sequential business process are triggered.
Each worker in turn builds upon the information base established by preceding workers, and each workers entries are rigorously qualified. For example, following sales, process flow may continue to Sales Support, Accounting, Purchasing, Receiving, Assembly, and Shipping.
During the process external influences occur. An external influence may be a communication from a customer or vendor, for example, to either convey information or to view information stored in the central database. Information may be conveyed by electronic means (e.g., Internet, intranet, EDI, satellite, remote terminal direct-dial), human-mediated telecommunications (e.g., email, phone, fax), or by physical means (letter, visit, etc.).
As compared with the conventional business process of FIG. 1, the circular automated business process of FIG. 2 revolves around a single integrated database that accumulates information regarding every important activity of every user and defines a non-repetitive process. Furthermore, as compared to the essentially non-reversible process of FIG. 1, the process of FIG. 2 is reversible. As seen in FIG. 2, following Shipping is a Return/RMA (Return Merchandise Authorization) activity. This activity enables the forward process to be reversed, or backed out of step-by-step, as part of the overall automated business process.
The cumulative nature of the database of FIG. 2 and the sequential nature of the business process enables incisive factual analysis in the areas of employee/vendor performance and customer satisfaction, promoting fairness and personal responsibility. Whereas a human supervisor may effectively supervise only a limited number of employees, the database-implemented business methodology of FIG. 2 provides for each employee what may be regarded as a "virtual mentor." the user is guided during use of the system to prevent common mistakes (in fact, all mistakes made collectively by the all of the user's predecessors functioning in the same assignment), and the user's performance is continuously tracked and made accessible. Strengths and weaknesses in the employees performance may recommend certain changes in assignments--which changes may be made relatively easily by the employee because of the intuitiveness and intelligence of the system. This virtual mentoring process, described in greater detail hereinafter, promises to make the virtual office and telecommuting, with all its attendant advantages, a practical reality for a much wider segment of the workforce.
Referring now to FIG. 3, a block diagram is shown of a computing environment in which the present invention may be used. A Web-enabled, client/server relational database management system (DBMS) is provided storing a database including files belonging to different business domains, e.g. a products domain, a payments domain, a financial performance domain and a personnel domain. (The term "product" is used generically herein to refer to items sold and may be tangible goods, financial products, subscriptions--anything that may be bought and sold in a discrete transaction.) Also provided are code modules pertaining to each of the different domains. Customers and vendors may obtain access to the database through the Internet or the like. The physical location of the database therefore becomes irrelevant--the database can be everywhere in the world, either through wired communications or wireless communications. A firewall (or other security scheme, such as encryption, implemented in either hardware or software) may be provided between the Internet and the Web interface of the DBMS. Internal clients may be connected to the DBMS through a local area network (LAN) or through an intranet, using the Web interface.
Web User Interface
The Web interface to the database, particularly as seen by the customer, will presently be described in greater detail.
Referring now to FIG. 4, an illustration is shown of a products search screen display. From the products search screen display, the user is able to fill in various fields (e.g., Manufacturer, Manufacturer Part#, Item Description) to find products within the database. To view a manufacturers list, the user clicks on the first letter of the name of the manufacturer.
The user is also able to find earlier quotes. A user obtains a quote in a manner described below. Buttons are provided to find a quote by quote number, to find quotes for the current day, or to find quotes for the current week.
Assume for purposes of illustration that the user wishes to find products. Having entered product search parameters, the user then clicks on the button Search for Products. A product list within the database is then searched for products matching the specified parameters, and a Product List such as that of FIG. 5 is displayed, including a product description, the manufacturer, the media (if applicable), the platform, the manufacturer part number, and the unit price. Items are displayed ten at a time unless some other number is specified from the Product Search screen. The Product List can be further searched by manufacturer, manufacturer part number, or description. At any time, the user may save the Product List as a set by entering a name for the set or may search again.
When the user sees an item of interest displayed on the Product List, the user checks the item. When all of the items of interest have been checked, the user clicks the button Show Shopping List, causing a Product Shopping screen to be displayed as illustrated in FIG. 6. The products checked previously are displayed, including a product description, the manufacturer, the manufacturer part number, and the unit price. Within a quantity column, ones are automatically entered for each item. Zeroing the quantity cancels that item such that it is not included in any quote that is created.
The user by choosing the appropriate action within the pop-up menu can create a quote for the specified items and quantities, can cancel and empty the "shopping basket," can go back to the Products List, or can go back to the Search for Products screen. When a quote is created, it is displayed as shown, for example, in FIGS. 7A-7C. A quote number and the quote date are displayed at the top of the quote. The salesman assigned to the account is displayed, together with account-specific defaults concerning shipping and payment terms. Then the items quoted are displayed, including description, manufacturer part number, unit price, quantity, and extended price. The sub-total, applicable tax, and total are calculated and displayed. A notes box is also provided for the user to enter notes regarding the quote.
A pre-arranged bill-to address and ship-to address are automatically displayed. The user may request that the ship-to address be changed for this order. Typically, for security reasons, such a request would be required to be confirmed in writing or by some other means.
Within the following portion of the screen display, the user is requested to confirm various details of the quote or to disconfirm and provide clarification. (Yes or No must be checked for each detail or the quote cannot be submitted to the sales representative.) A text box is provided for the user to enter special requests. As may be seen in FIG. 8 and FIG. 9, respectively, these special requests are presented in a window whenever a corresponding quote or purchase order is displayed. Referring again to FIG. 7B, a box is also provided to request installation and provide installation instructions. Alternatively, an advantageous method of specifying installation instructions via the Web, by selecting a primary system and then specifying secondary components to be installed in that system is described hereinafter. Shipping instructions may also be conveyed "phones free" via the Web. In case further clarification is required, the user is requested to enter an email address, fax number or phone number according to the user's preference.
In contrast to consumer-oriented Web commerce, in the present business-to-business Web commerce system, an authorization number is required. The number may be a Purchase Order (PO) number, a Product Identification (PID) number, a Request for Quotation (RFQ) number, a Purchase Requisition (PRN) number, or may be based on unique requirements of the customer specified by a user with proper authority. By arrangement with each customer, one of these various numbers may be singled out as being required for purchase authorization, the remaining numbers being used for reference purposes only. The particular number required for purchase authorization may vary from customer to customer.
Once all of the requested information has been provided, the user then chooses from among possible actions, including making changes to the quote, going back to the Products List, submitting the quote to the sale representative, close the quote without saving any changes that the user may have made, or save the quote without submitting it. Note that a particular user, however, may have authority only to obtain quotes but not to submit quotes (place orders), or may have a purchase limit for a single purchase or for a predetermined time period (e.g., weekly, monthly, quarterly). If the user attempts to exceed his authority, the system will display a dialog informing the user that the selected action cannot be taken.
In practice, if a user is allowed to obtain quotes but not submit quotes, the user will obtain and save a quote, note the quote number, and notify a superior having purchasing authority (e.g., via email) of the quote number. The person having purchasing authority may then use the quote number to retrieve and review the quote and submit the quote if it is in order.
When a quote has been submitted, a confirmation screen is displayed thanking the user for the order, displaying the quote number, and confirming that the quote has been submitted as an order.
The Web user interface should be made as inviting and as convenient as possible to induce customers to convert to doing business on the Web exclusively insofar as possible. Convenience may be furthered by presenting to the user additional options for listing, searching and displaying product information. The Web user interface may therefore be modified as shown in FIG. 10 to present a variety of options relating to products and quotes.
To display a product listing from all manufacturers by product category, option 1 is selected. A page such as that shown in FIG. 11 is then displayed. The user may check product groups and categories of interest, e.g., accessories and supplies, input devices, etc. To display a product listing from a single manufacturer by product category, option 2 is selected. A page such as that shown in FIG. 12 is then displayed, prompting the user to enter a manufacturer name by either typing in the name or selecting the first letter of the manufacturer's name and then further selecting from a list of manufacturer names beginning with that letter. When the manufacturer has been specified, the Continue button is pressed, and a page like that of FIG. 11 is then displayed, whereby the user may specify product groups or categories of interest.
Product listings may also be produced by manufacturer name, description or part number (option 3) or for a single manufacturer by description or part number (option 4). These options cause a page such as that of FIG. 13 to be displayed.
Each customer may have each own Approved Products List (APL) in which products are identified by a Product ID (PID). The APL constitutes in effect a company catalog. To search the APL, option 5 is selected, whereupon a page such as that of FIG. 14 is displayed. Instead, products may be searched by purchase history. A customer may have established buying patterns but may not have arranged for an APL. To search "core products," i.e., products purchased before by that company, option 6 is selected. A page such as that of FIG. 15 is then displayed.
To view previous quotes, option 7 is selected. A page such as that of FIG. 16 is then displayed. The user can find a quote by quote number, show today's quotes, show this week's quotes, etc. Quote information for a particular period may be displayed as shown in FIG. 17, allowing the user to select a particular quote for viewing.
A large and complex order may require detailed installation instructions. Consistent with the "phones free" philosophy of the present software, even complicated installation instructions may be conveniently conveyed using the Web. Referring more particularly to FIG. 18, showing a display of a quote, an installation button is provided. When the user clicks the installation button, a page such as that of FIG. 19 is displayed, affording the user an opportunity to select a system for which installation instructions are to be specified. The user selects a system ("primary item") and clicks the continue button. A page such as that of FIG. 20 is then displayed. An item may have multiple item details, some or all of which are to have installation performed. The user selects the number of systems to have installation performed, then clicks continue. A page such as that of FIG. 21 is then displayed, showing the other quoted items ("secondary items" available as components to be installed within the foregoing primary item). The user selects items to be installed in the system, specifying quantity (i.e., multiple item details may be installed in a single system).
In the embodiment described, a single configuration is specified for all 10 systems. In other embodiments, different configurations may be specified for different numbers of the total number of systems.
Besides product display, ordering, and installation, returns and tracking are vital capabilities provided as part of the same Web user interface. Selecting Returns from a home page or a Returns link from any of the previously described pages causes a page such as that of FIG. 22 to be displayed. The user enters identifying information about a product to be returned (e.g., Customer PO#, Customer Invoice#, manufacturer), checks a "radio button" to specify the product's condition (unopened, used, etc.) and select a return type from a menu (e.g., wrong product, defective product, etc.). The seller, with the help of the system, assumes the responsibility of identifying the product based on whatever piece or pieces of information the user is able to provide. For example, the user may know the asset tag number of a product by looking at the product but may have not further information about the product. A text box is provided for the user to enter addition details, if necessary, and fields are provided for the user to enter phone and fax numbers and the user's email address. The page also calls for the user to provide information concerning the condition of the product (opened, unopened, etc.) The RMA request may then be submitted for processing. Prior to submitting an RMA request, the user may wish to change the ship-to address if a replacement product is to be shipped. When the corresponding button is pressed, a page such as that of FIG. 23 is displayed for this purpose.
Referring again to FIG. 22, ordering parts for out-of-warranty products is provided for on the same page as RMAs, inasmuch as a transaction is needed that relates back to a previous transaction. When the user presses the corresponding button, a page such as that of FIG. 24 is displayed. As with an RMA request, the user enters identifying information about the previously-purchased product. Text boxes are then provided for the user to describe the product malfunction, type of problem, parts needed, etc.
Most often, parts will not be ordered by the customer but rather by service personnel. Nevertheless, customers are able to track the status of the part order themselves. Navigating to a Tracking page, FIG. 25, causes this option and various other tracking options to be displayed. From this page, the customer can track sales order status, RMA and service part status as just described, product purchase history, return and service history, customer invoice and credit memo status, etc. A text box for special comments and phone/fax/email fields are provided as before.
Selecting Option 1, Sales Order Status, causes a page such as that of FIG. 26 to be displayed. Two different methods are provided for retrieving sales order status information. The first method involves the user inputting either a customer PO number or customer invoice number. The second method involves the user inputting one or more of various other identifying pieces of information, e.g., manufacturer, manufacturer part number, serial number, month purchased, etc. Both methods allow for the resulting records to be sorted in various way in accordance with the user's preference. FIG. 27, for example, shows search results sorted by manufacturer.
By checking selected items and selecting a Get Freight Carrier and Tracking Number menu item, a display such as that of FIG. 28 results. By clicking the Track It button, a link is followed to a tracking page of the carrier used to ship the item, United Parcel Service (UPS) for example. A UPS tracking screen is shown in FIG. 29. Referring again to FIG. 27, by checking selected items and selecting a Ship to Address button, a display such as that of FIG. 30 results.
Referring again to FIG. 25, selecting Option 2, Return Product and Service Part Status, causes a page such as that of FIG. 31 to be displayed. By means of this page, the user can search by case number, quote number, RMA number, PO number or invoice number, for example (Option 1) or can request more search options (Option 2). Clicking for more search options causes a page such as that of FIG. 32 to be displayed. When the requested search has been completed, the resulting records are displayed as shown in FIG. 33.
The ability to track parts on the Web has far-reaching implications. A large corporation may have hundreds or thousands of computer technicians working continuously to many thousands of networked computers working properly. When a user's machine goes down, the user might notify a person in the user's department having computer responsibilities, who might in turn contact the MIS department, which would then contact the technician to do the actual work. The technician, once he or she ascertains where the computer was purchased, might then contact the appropriate sales representative within that company for a replacement part. Within the company, other personnel having responsibilities for customer service, RMAs, and shipping and receiving, as well as supervisory personnel and ultimately the equipment vendor, may then become involved. Because many people are involved on both on the customer side and the seller side, absent the present system, the result is a flurry of activity, emails, phone calls, etc. The user, impatient for his computer to be fixed, call the department computer person, who calls, MIS, which calls the technician, which calls the seller's salesman, etc. When the part is received, it may be shipped to the technician, to the department or to the end user, perhaps without a clear understanding on the part of all parties involved.
Using the present system, on the other hand, all parties have simultaneous access to up-to-date information about the status of the part, whether it has been ordered, received, shipped, the ship-to address, etc.
Referring again to FIG. 25, selecting Option 3, Product Purchase History, causes a page such as that of FIG. 34 to be displayed. By selecting one option for each criterion, products purchased within a specified time window of a specified date may be found and displayed in sorted order according to the user's preference. FIG. 35, for example, shows a display of products purchased within a 30-day window up to and including March 1997, i.e., products purchased within the month of March 1997. Corresponding pages as those for Product Purchase History (FIG. 34 and FIG. 35) are also provided for Return and Service History (Option 4) as shown in FIG. 36 and FIG. 37, respectively.
The last option, Option 5 in the illustrated embodiment, is an Accounting Information option. Selecting this option causes a page such as that shown in FIG. 38 to be displayed. Accounting information is password protected. If the correct password is supplied then one of two possible pages are displayed according to whether the user is a customer or a vendor.
If the user is a customer, then customer invoice search options are displayed as shown, for example, in FIG. 39. FIG. 40 shows a display of customer invoice records resulting from a search, in this example a customer invoice that was partially paid and a credit memo the credit of which has not been fully taken. Further details regarding a record may be shown by checking the corresponding box and clicking the Take Action button. A display such as that of FIG. 41 then results.
If the user is a vendor, then vendor invoice search options are displayed. Vendor invoice pages corresponding to the customer invoice pages previously described are shown in FIG. 42, FIG. 43 and FIG. 44, respectively.
As may be appreciated from the foregoing description, the system provides for "information-rich" invoice payment status tracking and display. The simple knowledge that an invoice is open (has not been paid) is of little value. The more pressing question is why a customer invoice should be paid (e.g, has a return question been resolved?) or why vendor invoice has not been paid (e.g., was sales tax incorrectly charged?). The present system is designed to track such invoice payment status information. Because the database is Web-enabled, the same information may be readily displayed to customers and vendors, avoiding the need for telephone calls, "telephone tag," etc.
Web Security
Doing business electronically poses various security risks. In the case of consumer-oriented Web commerce, much attention has been focused on secure transmission of credit card numbers and various security mechanism have been made available. In the case of business-to-business Web commerce of the type described, payment is usually not by credit card except for very small transactions. Instead, security risks involve potential abuse of the system by external parties or even internal parties. The present invention implements various security mechanisms to eliminate or minimize the potential for such abuse. Fundamentally, the security mechanisms are based on concepts of authority and lineage. A simple example is that the ship-to address for an order cannot be changed on-line. This prevents someone from ordering products and having them sent to their home or elsewhere.
Lineage relates authority to organizational hierarchy. The organizational hierarchy of Web users for a particular customer may be represented in tree fashion. A user at the leaf level may be given authority to get quotes but not to place orders. A user at a next-higher level may be given authority to view the quotes of users within a limited sub-tree and may be given limited authority to place orders. A user at the root of the tree may be given unlimited authority, from the standpoint of the customer, to view quotes of any user and place orders in any amount.
Referring generally to FIG. 46, in the case of a typical company, various end users will be given different levels of authority, e.g., to create quotes but not purchase, to track orders, to perform returns, to view order information via the Web, or, in the most limited case, to have no access to Web purchasing information. To initiate the purchase process, an end user makes a quote request to his or her supervisor, who must approve the request. The request may require multiple further approvals, for example of an MIS department, an accounting department, a material management department, etc. In a typical scenario, the material management department will forward an approved request to a purchasing department Authorized persons within the purchasing department may then send an order via the Web. In every instance, when Web access is attempted (and in fact every time a TCP packet is received), a user's authority is checked and that user's interaction via the Web is limited to the scope of that authority.
External Web authority information is stored for each customer in a customer file. An example of a customer record is shown in FIG. 47. From the customer file, a company price list record such as that of FIG. 48 may be displayed. For each customer, a price basis may be agreed upon for items that the customer buys regularly. External Web authority information is stored as part of the customer price list.
The manner in which a external Web user's authority is specified is illustrated in a series of figures beginning with FIG. 49. First, the user's name is entered, first name (FIG. 49) then last name (FIG. 50). An employee number may then be entered (FIG. 51), absent which an arbitrary employee number is generated automatically. A dialog then asks whether the user is authorized to make Web purchases (FIG. 52). If the user is authorized to make Web purchases, then a further dialog calls for a purchase limit, if any, to be specified (FIG. 53). A confirmation dialog is then displayed (FIG. 54). The customer price list record following addition of the Web user with specified authority is shown in FIG. 55.
The specific limits placed on a user's purchase authority may vary. Other examples of limits that may be desired by some companies are a limit on the number of purchase orders per day, a limit on the total amount of purchase orders per day, a time-of-day limitation as to when orders may be placed, etc. Various other security parameters may be added.
Limits are also placed on internal users access to security parameters so as to provide customer assurance that there exists no potential for internal abuse of the system (e.g, authorizing a crony to make illicit purchases on a customer account). A user may have authority to use (view) but not approve changes to certain security parameters, and may have authority to use and approve changes to other security parameters. In an exemplary embodiment, the authority of various users is set as illustrated in FIG. 45.
Catalog Management
In the case of a company based on the conventional model of real inventory, Web catalog management is relatively straightforward. In the case of a company based on the model of virtual inventory, "the world is your warehouse." Intelligent catalog management is therefore of vital importance. Intelligent catalog management, in an exemplary embodiment, is based on a concept of "baseline." A baseline is a collection of products that functions as a standard of comparison. In an exemplary embodiment, there is both a vendor baseline and a customer baseline. Using the baseline concept, a product list without duplicates may be displayed. Furthermore, there may be displayed to the customer only products that there is some reasonable likelihood of the customer buying.
On the vendor side, one vendor is selected to serve as the baseline vendor. The baseline vendor will typically be a vendor found to have the most comprehensive inventory, the most useful categorization scheme, etc., and may be varied as often as desired. To create an update baseline, product listings of vendors are compared with the current baseline. If a product is already part of the baseline, as determined by manufacturer part number, then the product is grouped under the same baseline listing. For example, the same computer may be available through multiple different vendors. Rather than creating multiple product listings for the same product, these multiple product listing are consolidated under a single baseline product listing. If a product is not in the baseline, it may be added to a "supplemental baseline." If the baseline vendor does not carry a particular product but one or more alternate vendors carry the product, then the product will be listed in the supplemental baseline, again without duplicates.
After an updated baseline has been compiled, it is compared with the previous baseline. A product listing may be found: 1) in the old baseline only; 2) in the new baseline only; or 3) in both. Product listings in categories 1 and 2 are flagged as discontinued products and new products, respectively.
During the foregoing process, product cost and customer pricing information is updated. Also updated are URLs to vendor and manufacturer Web sites. These URLs may be used to refer Web users to these sites for product information. Product list updating may occur continuously or at regular intervals using "pull" technology, "push" technology, some combination of the two, or some other information retrieval technology or combination of technologies.
On the customer side, a customer baseline is formed by combining: 1) customer APLs (Approved Product Lists) for all customers or some subset of customers; and 2) historical purchase information, taking into account such factors as purchase date, volume, etc. There results a non-duplicative list of products customers have bought or are presently approved to buy. Products in the vendor baseline may be flagged as belonging or not belonging to the customer baseline.
As a result of the baseline concept and the power of the DBMS, great flexibility is provided in the manner in which products may be displayed. A user may search the product file and request to see new products, discontinued products, vendor baseline products, without duplicates, vendor baseline products expanded to show duplicates, customer baseline products, customer-specific APL products, etc. In this manner, the seeming chaos that would otherwise result from the "infinitude" of products embraced by the notion of virtual inventory is tamed and made manageable.
Much of the difficulty of successfully implementing a cohesive business-to-business Web commerce solution has resulted from different aspects of a company's business being automated on different computing platforms. As illustrated in FIG. 56, for example, a product catalog may be implemented on one platform, shipping implemented on another platform, accounting implemented on still another platform, etc. To interface all of these different functions to the Web requires multiple interfaces.
By using a single Web-enabled database and providing for all necessary functions within a single database schema, the present Web commerce solution avoids the daunting complexity characteristic of the prior art. Referring to FIG. 57, a single universal interface may be used to place the entire contents of the database, or as much of those contents as desired, on the Web.
Database Schema
An important feature of the present system is that a single database, described by a single database schema, is used to automate an overall business process, end-to-end. To do so, the schema must, understandably, be quite complex. A general outline of the schema is shown in FIG. 58. The complete schema, or structure diagram, is set forth in the microfiche appendix filed herewith.
Referring to FIG. 58, the manner in which various automation processes relate on an inter-domain basis may be appreciated. The products domain is represented in approximately the upper third of FIG. 58 and includes sales functions (5801) and shipping/receiving functions (5803). Purchasing and installation functions, now shown in FIG. 58, are shown in the microfiche appendix. The payments domain is represented in approximately the middle third of FIG. 58 and includes AP functions (5805), AR functions (5807) and return functions (5809). The financial performance domain is represented in approximately the lower third of FIG. 58 and has financial information automatically posted to it from the payments domain, as described more fully hereinafter. The personnel domain is not shown in FIG. 58 but draws upon information from the other domains in a manner described more fully hereinafter.
In an exemplary embodiment, the relational database management system provides both a "Quick Switch" option whereby any base table may be viewed or a "Related Switch" option (described in greater detail hereinafter) whereby a base table may be selected from which is then displayed a row related to a selected row in a current table. Various user options may be provided programmatically. Table 1 is a list of most of the base tables and corresponding options in an exemplary embodiment of the invention.
TABLE 1
______________________________________
Base Table (Options)
______________________________________
Addresses
Allocatedlndex
AP.sub.-- Registers
AR.sub.-- Registers
Chart of Accnts
Checking.sub.-- Acts
Ch Statements
Claims
Commission Reg Quick invoice lookup
Quick credit lookup
Get register
Get not approved
Get approved but not paid
Approve
Disapprove
Change payment date
Pay
Commissions Quick lookup by period
Quick transaction lookup
Quick PO lookup
Quick MWS lookup
Quick invoice lookup
Quick credit memo lookup
Get not approved
Approve
Get approved
Schedule payment
Notes
Hold
Get hold
Reset back 1
Check commissions
Recalculate commissions
Change commission Email
Contacts File
CustCredMemos Quick memo lookup
Credits not taken
Credits taken
Credits on hold
Internal credits not taken
Internal credits taken
Hold credit memo
Internal notes
Customer notes
Internal status change
Customers Add employee purchase record
Approve customer
Find employee
List employees
CustPayments Get not approved
Get not posted
Approve
Post
Cust.sub.-- invoices Quick invoice lookup
Cust invoice summary
Print selection
Comm report
Get AR report selection
Get not issued
Get not paid
Get no charge
Get pre-paid
Close-no charge
Split invoice
Join 2 invoices
Issue invoices
Check for not issued invoices
Defaults
DropShipments
FAX Templates
Item Details
Items Sold Quick MWS# lookup
Add MWS to fast order
Open order reports
Expedite/availability
Customer notes
CSR notes
Status (restricted)
Expand to all items sold
Remove shipped
Check selection again
Update MWSs
Clear updates
Tech expedite
Clear tech expedite
Get in house not rcvd
Receive in house
Get installation not rcvd
Receive installation
MWSLog
OverUnderPay Get not reconciled
Get not cleared
Get open
Close
Packing Slips
Partners Find by expense account
Vendor priority maintenance
Personnel
PID ItemsSold
PIDs
Products
Purchase Stats
Purchasing
Quote Detail
Rcvd Boxes
Receiving Receive
Installation
Update MWSs
Double, wrong, defective, or no MWS
Fill allocation
Freight check
Recover receiving register
Report
RMA Quick RMA lookup
Quick case lookup
Quick PO/PID/PRN/RFQ
Get Web RMAs
Update RMAs
Expected cred summary
Edit fax cover sheet notes
Sales Records Quick MWS# lookup
Quick quote# lookup
Quick PO/RFQ/PID/PRN LU/conf.
PurchChecks
Update MWSs
Expedite/availability/purch
Urgent
Not Urgent
Daily PO confirmation
Get quotes
Print quote confirmation
Quotes requiring REVIEW
Cancel REVIEW
Get purchasing records
Print purchase summary
Clear updates
Lock
Unlock
Get unlocked
Change TPO to real PO
Get temporary POs
Get Web quotes
Sales.sub.-- Reps
Sales.sub.-- Support
Sales.sub.-- Taxes Recalc selection
Add sales tax
Shipping Quick lookup by period
Quick lookup by pickup number
.sub.-- Following works in selection
Get not reconciled open
Get not reconciled closed
Get reconciled open
Get reconciled closed
Installation
Update MWSs
Freight check
Reconcile freight
Recover register
Merge registers
TaxRegister Due dates
Update user selection
Print user selection
Sets window
Tax.sub.-- Tables
Ven Pmnt Regs Quick invoice lookup
Quick credit lookup
Get register
Get not approved
Get approved but not paid
Approve
Disapprove
Change payment date
Pay
Get regs with credit balances
Vendors with credit balances
Close register
Open register
VenCollection Quick memo lookup
Quick invoice lookup
Quick payment register lookup
Get not used
Get excess/not distributed
Get distributions
Get expected memos
Reconcile expected memo
Get not pre-approved
Pre-approve
Get pre-approved
Approve
Get approved
Schedule
Reset status back 1
Cancel credit memo
VenMultiCred
VenRecExpCred
Ven.sub.-- Invoices Quick invoice lookup
Quick voucher lookup
Quick check lookup
Search selection by date
Verify selection
Daily verification
Get all not paid
Get not reconciled
Get reconciled
Reconcile with credit
Pre-approve
Get pre-approved
Remove pre-approved
APPROVE
Get approved
Schedule payments
Schedule pre-paid payments
Close selection
HOLD selection
Get hold
Reset status back 1
Edit terms/payment/vouchers
Integrity check
Temporary notes
Update invoice
Mark ready for review
Get ready to review
Mark reviewed
Get reviewed
______________________________________
Various screen displays showing the options pop-up menu for that screen display are shown in FIG. 124 through FIG. 128.
Business Process--Overview
An overview of the present automated business process is shown in FIG. 59. In an illustrated embodiment, the automated business process has nine entry points, designated E1-E9, at which users enter information into the system. Interaction with the system is carefully controlled and user inputs carefully qualified to ensure, to the greatest degree possible, error-free operation.
The business process is customer-driven. The first entry point E1 in the business process is Sales/RMAs. In response to a customer request, a user having responsibility for E1 enters information about the customer request into the database. If the request regards sales, the information is checked and converted to a Master Worksheet (MWS). At an entry point E2, the responsible user groups MWSs for purchasing and places orders. Information is assembled for later use in receiving (E3), installation (E4), and shipping (E5). Respective users at these entry points make entries into the database which as confirmed against the assembled Purchasing/Shipping/Receiving/Installation (PSRI) information to verify correctness.
Unlike prior art systems, the present system is based on the concept of virtual inventory. In accordance with the concept of virtual inventory, all of the goods available for purchase in all of the warehouses throughout the world are regarded as available inventory. Because the Web allows business to take place at light speed, the difference between physical inventory and no physical inventory can be merely the click of a button on a computer screen. As goods are received and shipped, these events are tracked by a virtual inventory process in which all items are presold.
Entry points E6 and E7 relates to customer and vendor payments, respectively. Assembled information is input to A/P and A/R modules. Customer payments are received and entered in conjunction with the A/P module. Vendor payments are made in conjunction with the A/R module.
A general ledger (GL) module tracks transactions and their financial implications in real time. It therefore receives information from the A/P, A/R and virtual inventory modules as well and entry points E6 and E7. Bank statement information is also input to the general ledger module at entry point E8.
The customer request, instead of being for sales, may be an RMA request. Information is then input from E1 to an RMA module. A reverse process in then executed, begun by an RMA number being communicated to the customer. In the typical case, the customer then returns merchandise authorized for return. The returned merchandise is received (entry point E3) in conjunction with the RMA module and receiving information portion of the assembled information. The RMA module communicates with the GL module so that appropriate accounting entries may be made.
The effect of the overall business process is two-fold. First, a response to the customer's input is produced and communicated back to the customer. Second, during the course of the business transaction, a wealth of historical data are accumulated that may then be subjected to factual analysis for purposes of ensuring customer satisfaction, evaluating employee performance, and evaluating vendor performance.
In the following description, the course of an order will be described within each of the domains identified in FIG. 3, as follows: in the product domain, from quote to shipment, as well as return (although rather atypical, returns are nevertheless a common occurrence); in the payments domain, from invoice to payment (both customer and vendor); in the financial performance domain, from cashflow to financial statements; and finally, in the factual performance domain, from parameters such as time, quantity and dollar volume to individual and group employee performance.
Sales
As may be appreciated from the foregoing description, an order may be preceded by a quote. Quotes may be requested and orders may be placed in writing (e.g., by fax), verbally (e.g., by phone), or electronically via the Web. More generally, order information may be conveyed by electronic means (e.g., Internet, intranet, EDI, satellite, remote terminal direct-dial), human-mediated telecommunications (e.g., email, phone, fax), or by physical means (letter, visit, etc.). Regardless of the origin of the quote or order, the quote or order becomes a sales record.
A screen display that may be used to view sales records is shown in FIG. 60. Quotes are each assigned a Quote number having a "Q" prefix. Orders are tracked via records referred to as "Master Work Sheets" (MWS). A Master Worksheet contains all of the vital information related to an order. As seen in FIG. 60, orders are each assigned a MWS number having a MWS prefix. The screen display of FIG. 60 includes a status column in which the status of each quote and order is indicated, e.g., WebSubmit, WebQuote, Purchasing, etc. The status of each record can therefore be readily ascertained and tracked.
Referring to FIG. 61, the input layout of a quote is shown. During record input, the system prompts the user at every opportunity. For example, when the cursor is placed within the customer field, a list of previous customers is displayed. Assuming the customer is a repeat customer, the user can select the customer from the list. Various fields are then completed from information previously stored for that customer.
To add an item to a quote, the user clicks the "+" icon, followed by the "Go Prod" button. The Products file is then displayed, as shown in FIG. 62. The Products file may contain hundred of thousands or even millions of product records of products from different vendors. When the user selects a product, the all of the relevant information for that product is transferred to the quote. To facilitate selection, the product file may be searched in various ways, e.g. by vendor, product category, etc. By searching the products file by manufacturer part number, the vendor offering the best price for a particular product may be identified.
When all items have been added, the user is asked to specify partial shipment status. The partial shipment status specifies what items, if any, can be shipped separately and what items, if any, are required to be shipped together. The user is further prompted to enter installation information and to ensure that all required cables, brackets, etc. have been ordered. In the case of computer equipment, for example, installation may involve installing a card or installing memory within a computer, loading software, etc. If installation is specified, installation charges are automatically added to the quote.
During the foregoing process, the user may enter notes within a screen 6101. This screen is displayed whenever the quote or MWS is displayed. If a quote is created on the Web, a separate notes screen is provided for customer notes. A corresponding notes screen for internal use only is provided for all quotes.
When the quote is satisfactory, the user may then save the quote by pressing the post to purchasing button.
To ensure that a quote is correct, one or more additional review stages may be required before the quote is converted to an MWS for purchasing. For example, the quote may be reviewed by "inside sales" to make sure that any compatibility requirements have been met and that, from a technical viewpoint, there are no errors in the quote. In a further review stage, the quote may be compared to a paper purchase order, if one exists, to make sure there are no discrepancies. When the quote has passed whatever level of review is required, it is then marked reviewed and converted to an MWS. The format of an MWS is shown in FIG. 63.
Note that, during the foregoing process, different people may have different limited privileges. Also, throughout the foregoing process and throughout the system generally, at each information entry point, the user's input is checked for accuracy in order to prevent common mistakes from occurring.
PRIS (Purchasing, Receiving, Installation, Shipping)
Purchasing, receiving, installation and shipping functions are closely interrelated. For this reason, preferably the output display/user interface presented during these different processes preserve a common look and feel.
Purchasing may be based on a real inventory model, a virtual inventory model, or a combination of the two. In the case of the virtual inventory model, automating purchasing functions in such as manner as to 1) scrupulously avoid physical inventory; and 2) achieve business scalability, becomes a challenge. The following description assumes that purchasing is based at least in part on a virtual inventory model.
A simplistic approach to purchasing is to treat each customer purchase order separately. Under this approach, however, the amount of work involved in purchasing is proportional to the number of customer purchase orders; business cannot achieve 100, 200 or 1000% growth in a short period of time without causing severe growing pains.
Instead, the purchasing module of the present system is designed for business scalability and maximum automation, allowing for dramatic growth without a dramatic increase in human effort and with little or no pain. Scalability is achieved by "commingling" customer orders in such as way that what appears to an outside vendor as a single large order is tracked within the system as a multitude of smaller orders.
Referring to FIG. 64, purchase order sales actions result in MWS records, each MWS record including all of the relevant information required for purchasing. In an exemplary embodiment, this information includes internal MWS number, customer P.O. number, sales cost, sales price, vendor, part number, manufacturer, manufacturer part number, installation grouping (within a particular MWS), shipping instructions, and stock/inventory status. Each MWS is assigned a unique MWS number which is used throughout the life of a transaction to differentiate distinct purchase orders. Any unique identifier may server the same purpose, including, for example, a material code number, a purchase requisition number, etc.
If a mixed physical/virtual inventory model is followed, then a physical inventory process determines prior to purchasing whether an item is already in inventory and hence need not be purchased, at least for purposes of fulfilling the order. Items not in inventory must then be purchased. The design of a purchasing output dispIay/user interface greatly simplifies the purchasing process. For each item to be purchased, a record is displayed including each of the foregoing pieces of information. Preferably, all of the heading allow for sorting on that heading. Furthermore, all items are selectable and may be expanded (by doubling clicking) into item details.
The user interface allows a variety of actions to be performed, including grouping items within the display, removing items from the display, cancelling or changing various aspects of an order, holding an item or splitting an item (e.g., in order to hold less than all of the items details belonging to an item), etc. In an exemplary embodiment, items may be grouped by stock status (B/O, short stock), by shipping instructions (partial shipment OK, no partial shipment), by vendor, by manufacturer, by MWSs including addendums, etc. Groups of items may be removed from the display, including any of the aforementioned grouping and install groups. An item sold (one or multiple physical items) may be removed or an item detail (a single physical item) may be removed. Cancellations and changes may be made to an item sold, an MWS, shipping method, and freight charges.
In a typical scenario, a purchaser's work might proceed in the following manner.
1. Get all unfinished and new work (all items having no order date).
2. Select a subset of items to work and remove all other items from the output display.
3. Get all back ordered items and purchase them first. Eliminate related "no partial" items from the output display until the corresponding back-ordered item has been received.
4. Group items from different orders and possibly change vendor on some items to obtain quantity discounts, if possible.
5. Place order and repeat.
Various user interface buttons relate to the actual placing of a purchase order. In a telephonic transaction, purchase cost (Pcost) on an item might be negotiated downward below the sales cost (Scost). By selecting an item and clicking on the button, the purchase cost may be input in the course of placing the order. A sales confirmation number may also be input by clicking on the corresponding button. An automatically generated PO number may be assigned by clicking on button. By clicking on the button, the output display is refreshed to remove from the display items that have been ordered. Simultaneously, the system marks the ordered items as ready to receiving, thus preparing the items for receiving.
More preferably, purchase orders, instead of being placed manually, are placed electronically by linking to the seller's network of vendors. Automated purchasing may occur continuously or at regular intervals using "pull" technology, "push" technology, some combination of the two, or some other information retrieval technology or combination of technologies.
Business rules implemented by the purchasing process include the following:
1. Items cannot be ordered before a quote is converted to a MWS.
2. Duplicate orders are not allowed by item or MWS.
3. Items can only be ordered from approved vendors.
4. Purchasing can only be done by authorized personnel.
5. Purchasing notes can only be viewed by authorized personnel.
6. Purchase costs can only be viewed by authorized personnel.
Referring to FIG. 65, purchasing information, derived from MWSs, is used in the receiving process. (An item must have been purchased to be received.) Returns (RMA) information, also derived from MWSs, is also used in the receiving process. (Return items must be received in order to give credit.)
When the receiving process is begun, only items sold having an order date but no receive date are displayed. Double clicking on a item causes specific receiving instructions for that item to be displayed, as described more fully hereinafter. The display format is very similar to that of the purchasing process. The possible actions that may be initiated, however, are particular to receiving. Those actions include 1) input actions; and 2) display actions.
Information input during receiving includes packing slip number, serial number (each physical item, where applicable), carrier, quantity, payment terms, number of boxes, condition upon receipt, etc. Batch input for all packing slips and items. The system automatically matches input with items that exist in the system such that the same item cannot be received twice, the wrong item cannot be received, a cancelled order cannot be received, etc.
Expected to receive will exclude refusal items. For example, a customer may change his or her mind after an order has been placed but before the item has been received. In this instance, a refuse instruction may be placed on the item to prevent it from being received.
As in the case of purchasing, in the case of receiving also, great benefit is obtained from allowing vendor access via the Web to see what products order from that vendor have been received. The vendor then obtains the information it requires to be truly responsive to its customer's needs.
Referring to FIG. 66, installation is based on the same type of output display. However, only installation groups are shown. Items requiring no installation are not displayed. Furthermore, the user has the option to show all items requiring installation or to show only items requiring installation that have been received. The possible actions that may be initiated include 1) actions used to track installation in various different stages of completion; and 2) input actions, namely input of serial number and asset tag number. (Asset tag numbers may be affixed by prearrangement with the customer and retained in the system indefinitely to assist the customer in accounting for equipment.)
An installation, once begun, may have several possible outcomes. In the typical case, the installation will be completed successfully and the installation group may be released for shipment. In other instances, installation may be only partially completed--e.g., manufacturer technical support may be required, additional parts may be required to complete installation, or additional installation may be required for some other reason. In some instances, the appropriate action may be disinstallation, for RMA purposes or for some other reason. All of these different stages of completion are tracked within the system.
Referring to FIG. 67, the shipping process, like receiving, uses both purchase information and RMA information. The output display displays only items sold having a received date but no ship date. Double clicking on a item causes specific shipping instructions for that item to be displayed, as described more fully hereinafter. Input actions that may be initiated include inputting a shipping tracking number, serial number (if not previously entered), customer specific number or asset tag number, claim value, carrier (or will call, which causes a local sales tax rate to be applied), payment terms, boxes, etc. Provision is also made to display only those items expected to ship, excluding refusal items, hold items and items with COD/cash terms.
Referring to FIG. 68, throughout the foregoing processes, and in particular receiving, installation and shipping, notes conveying instructions regarding specific items may be displayed by double-clicking an item to cause a item detail display to appear. Included within the item detail display are several notes boxes, including boxes for unique installation notes, standard default notes from the customer file, unique shipping notes, standard default shipping notes from the vendor file (for RMA), RMA installation notes, receiving notes, etc.
The PSRI output display also includes an "Expedite" view, shown in FIG. 69. The expedite function is to minimize delay in receipt of ordered products. Expedite actions include entering the Estimated Time of Arrival (ETA) of a product based on contact with the vendor and/or shipper and marking items in accordance with various expedite categories, as well as entering notes if necessary concerning the problem and expected solution.
In accordance with one embodiment of the invention, expedite information may be brought up from the MWS screen, as shown in FIG. 70. In FIG. 70, a radio button has been clicked to cause a Not Received Report to be displayed. This report shows percentage of order completion in terms of ordering, receiving and shipping, as well as the age of the order in days. Various filtering options are provided. Expedite status for each item may be entered by clicking on one of a large number of status buttons, e.g., "Urgent," "Wrong Product," etc. A Not Shipped report screen display is shown in FIG. 71.
Expedite status may also be set using a more abbreviated expedite pop-up, shown in FIG. 72.
As with both purchasing and receiving, preferably vendors are given access via the Web to expedite information relating to that vendor.
RMAs
Normally, the order will be successfully shipped to and received by the customer, who would then begin to use the products. In some instances, however, the product may not work as intended, the product may be lost or damaged in shipping, or the customer may change his or her mind, necessitating that a product be returned. Returns are provided for through a Return Merchandise Authorization (RMA) mechanism. The same mechanism may be used for other account adjustments other than actual |