The present invention relates to an online service, and more particularly to a system that provides order processing and asset management, invoice visibility, and unique analytical tools to ensure telecommunications usage accountability within an organization.
In the modern telecommunications environment, organizations (e.g., companies) face significant challenges in managing communication expenses. Employees have need for multiple communication services, including Internet, wired telephone, and wireless telephone services, as well as various other services associated therewith, for use in day-to-day business. These services are typically acquired from multiple unrelated service providers, such as individual Internet service providers, wired telephone communication providers, and wireless telephone communication providers.
The diversity of sources of such services pose a substantial management challenge to an organization. For example, each provider's services are typically not reconcilable with the others or with budgetary goals and constraints. Moreover, each provider generally requires equipment specific to that particular provider to enable the service from said provider. Additionally, analysis of individual usage of the various services from the various providers is an arduous task, and management of the use of the services to meet administrative or budgetary guidelines is often difficult to accomplish without extensive human involvement in the parsing and evaluation of invoices and orders with multiple service providers.
Consequently, there is a need to track, manage and present communication services, and related expenses thereof, to an organization in such a manner that accounts for multiple and different services, multiple and different providers, and multiple and different equipment requirements, among other considerations.
Embodiments of the invention provide a system to manage, track and present communication services consumed by an organization. In particular, embodiments of the invention provide for a system to centrally track and present communication services consumed by an organization from a plurality of communication service providers. The system comprises an invoices data store for information relating to communication services expenses of the organization from two or more service providers, a services data store for information relating to services approved for use by the organization, and an inventory data store for information relating to communications equipment in use by the organization. In those embodiments, the system provides an interface for an organization member for viewing of one or more of invoices, services, and inventory specific to that member, and an interface for an organization administrator for viewing one or more of invoices, services and inventory applicable to plural members of the organization.
In alternative embodiments, a system to centrally track and present communication services consumed by an organization from a plurality of communication service providers is provided. The system comprises an invoices data store for information relating to communication services expenses of the organization from two or more service providers, a services data store for information relating to services approved for use by the organization, and an inventory data store for information relating to communications equipment in use by the organization. In those embodiments, the system provides an interface for the tracking and presentation of the consumption of both wireless and wired communications services, including invoices, services and inventory associated with the wired and wireless communications services.
In further alternative embodiments, a system to centrally track and present communication services consumed by an organization from a plurality of communication services providers is provided. The system comprises an invoices data store for information relating to communication services expenses of the organization from two or more service providers, a services data store for information relating to services approved for use by the organization, and an inventory data store for information relating to communications equipment in use by the organization. In those embodiments, the system is configured to import invoices from the plurality of communications services into said invoices data store, and the system further configured to receive first electronic invoice information for the organization from a first communications service and store the first electronic invoice information in the invoices data store associated with to the organization.
In still further alternative embodiments, a system to centrally track and present communication services consumed by an organization from a plurality of communication services providers is provided. The system comprises an invoices data store for information relating to communication services expenses of the organization from two or more service providers, a services data store for information relating to services approved for use by the organization, and an inventory data store for information relating to communications equipment in use by the organization. In those embodiments, the system is configured to import invoices from the plurality of communications services into said invoices data store, the system further configured to receive a paper based invoice for the organization from a communications service, extract electronic invoice information therefrom by character recognition, and store the electronic invoice information in the invoices data store associated with the organization. Moreover, in those embodiments, the system is further configured to generate an image for at least a portion of an imported paper based invoice that is relevant to a particular organization member for storage in said invoices data store.
These and other advantages will be apparent in light of the following figures and detailed description.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and, together with a general description of the invention given above and the detailed description of the embodiments given below, serve to explain the principles of the invention.
FIG, 10 is a flowchart illustrating a sequence of operations that may be executed by at least a portion of the system of
It should be understood that the appended drawings are not necessarily to scale, presenting a somewhat simplified representation of various preferred features illustrative of the basic principles of the invention. The specific design features of the sequence of operations as disclosed herein, including, for example, specific dimensions, orientations, locations, and shapes of various illustrated components, will be determined in part by the particular intended application and use environment. Certain features of the illustrated embodiments may have been enlarged or distorted relative to others to facilitate visualization and clear understanding.
Turning more particularly to the drawings, wherein like numbers denote like parts through the several views,
The computing system 12 includes at least one central processing unit (“CPU”) 14 (or more simply, “processing unit” 14) coupled to a memory 16. Each CPU 14 may be one or more microprocessors, micro-controllers, field programmable gate arrays, or ASICs, while memory 16 may include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, and/or another digital storage medium. As such, memory 16 may be considered to include memory storage physically located elsewhere in the computing system 12, e.g., any cache memory in the at least one CPU 14, as well as any storage capacity used as a virtual memory, e.g., as stored on a mass storage device 18, a computer, or another controller coupled to computer through at least one network interface 20 (illustrated as, and hereinafter, “network I/F” 20) by way of at least one network 22.
As illustrated in
The computing system 12 may be under the control of an operating system 32 and execute or otherwise rely upon various computer software applications, components, programs, files, objects, modules, etc., consistent with embodiments of the invention. In particular, the computing system 12 may be configured with a database management system 34 (illustrated as, and hereinafter, “DBMS” 34) to interface with and control a database 36, as well as a communication management application 38 configured to track, manage and present communication services information.
The computing system 12 may also include peripheral devices connected to the computer through an input/output device interface 40 (illustrated as, and hereinafter, “I/O I/F” 40). In particular, the computing system 12 may receive data from a user through at least one user interface 42 (including, for example, a keyboard, mouse, a microphone, and/or other user interface) and/or output data to a user through at least one output device 44 (including, for example, a display, speakers, a printer, and/or another output device). Moreover, in some embodiments, the I/O I/F 40 communicates with a device that is operative as a user interface 42 and output device 44 in combination, such as a touchscreen display (not shown).
In some embodiments, the DBMS 34 is configured to execute an operation on the database 36, such as a write, read and/or query consistent with embodiments of the invention.
To facilitate the optimization of queries, the DBMS 34 may also include a statistics manager 64. Statistics manager 64 may be used to gather, create, and/or analyze statistical information using database 36 for the query optimizer 52. It will be appreciated by those of ordinary skill in the art, however, that optimizer 52, statistics manager 64, database 36, database engine 54, and/or other components may be accorded different functionality in some embodiments. It will be appreciated by one having ordinary skill in the art that the DBMS 34 may include more or fewer components without departing from the scope of the invention.
In some embodiments, the communication management application 38 is configured to be controlled to track, manage and present communication services to the client 28.
Moreover, the communication management application 38 may include an interface module 76 and an international module 77. In some embodiments, the interface module 76 is configured to provide interfaces to the client 28. In specific embodiments, the interface module 76 is configured so selectively provide a plurality of interfaces to the client 28 based upon the identity of the client. For example, a first web page with information related only to a first client 28 may be accessed by that first client 28, while a second web page with information related to a plurality of clients may be accessed by a second client 28, wherein the second client 28 is an administrator. Similarly, a third web page with information related to financial information may be offered to a third client 28, wherein the third client is a chief financial officer. As such, the interface module 76 may determine the identity of the client, and thus provide appropriate interfaces therefor. In some embodiments, the interface module 76 is configured to provide an administrator's web page for a respective administrator to build the plurality of interfaces.
In some embodiments, the international module 77 is configured to convert foreign currencies into domestic currencies, foreign text into domestic text, and otherwise assist in the conversion of invoices in a foreign language to items in a domestic language for storage in the database 36. For example, when the client is based in the United States and an invoice from a foreign country includes a monetary amount that is in pound sterling, the amount may be converted into the United States dollar by the international module 77. Also for example, when the client is based in Great Britain and an invoice from a foreign country is written in French as well as includes a monetary amount that is in the euro, an item of text of the invoice may be converted into English and the amount may be converted into pound sterling by the international module 77. Thus, it will be appreciated by one having ordinary skill in the art that the international module 77 may be configured to convert either text or monetary amounts of an invoice from one language to another or from one dialect of a language to another consistent with embodiments of the invention. Furthermore, it will be appreciated that a conversion factor and/or conversion dictionary for the international module 77 may be updated consistent with embodiments of the invention (e.g., on an hourly, daily, two-day, weekly, monthly basis, etc.).
It will be appreciated by one having ordinary skill in the art that the communication management application 38 may include more or fewer interfaces and/or modules without departing from the scope of the invention. Specifically, and although not illustrated, it will be appreciated that the communication management application 38 may include interfaces configured to access and display information associated with specific tables of the database 36 and/or perform specific actions in response to user interaction with the communication management application 38. For example, the communication management application 38 may include at least one login interface that controls the login and/or logoff of a user, a help interface to provide support to the user, an administrative interface to allow administrators of the system 10 access to administrative tools, an inventory management interface to manage inventory and the presentation of information associated therewith, an order interface to manage orders and the presentation of information associated therewith, an invoice interface to manage invoices and the presentation of information associated therewith, a reporting interface to manage system and/or custom reports as well as the presentation of information associated therewith, and/or an error message interface to provide error messages, among other interfaces.
In addition to the carrier table 80, companies table 82 and/or contact table 84, the database 36 may be further configured with a plurality of additional tables, or data stores. For example, these additional tables may include a long distance services table 86 (illustrated as, and hereinafter, “LD” services table 86) to store information associated with long distance communication services and expenses thereof for at least one service provider, a local services table 88 to store information associated with local communication services and expenses thereof for at least one service provider, a wireless orders table 90 to store information associated with orders for wireless devices and/or a product table 92 to store information associated with products. Moreover, the database 36 may be configured with a wireless inventory table 94 to store information associated with wireless inventory, an invoices table 96 to store information associated with invoices and/or the invoices themselves, a data services table 98 to store information associated with data communication services and expenses thereof for at least one service provider (e.g., for example, Internet data services, wireless data services, etc.), an equipment table 100 to store information associated with equipment, a reports table 102 to store information associated with reports and/or the reports themselves, a company reports table 104 to link at least one report to a company, and/or a wireless users table 106 to store information associated with wireless users. As such, the database 36 may be configured to store data associated with a company, its users, and/or the various types of communication that company uses (e.g., local, long distance, data, wireless phone and/or wireless data).
In general, the carrier table 80 includes information associated with a carrier of long distance, local services, data services and/or wireless services. For example, the carrier table 80 may include fields associated with the name of the carrier, the type of the carrier, a path to display a logo of the carrier, a link to a website illustrating the coverage area of the carrier, as well as other carrier information. Moreover, and in specific embodiments, the carrier table 80 includes at least one field upon which the LD services table 86, local services table 88, wireless orders table 90, product table 92, wireless inventory table 94 and/or data services table 98 rely to access carrier information (e.g., a “primary key” of the carrier table 80, and a “foreign key” of the tables that use that field to access the carrier table 80). This field may be a unique identification of a carrier, or “CarrierID” field. It will be appreciated by one having ordinary skill in the art that the carrier table 80 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
In general, the companies table 82 includes information associated with a company configured to utilize the system 10 to track, manage and present their communication services, purchasing and use. For example, the companies table 82 may include fields associated with the name of the company, an account number, a tax identification number, a bit to indicate whether the company has billable invoices outstanding, a bit to indicate whether the company is sent invoices by e-mail, as well as other company information. Moreover, and in specific embodiments, the companies table 82 includes at least one field upon which the contact table 84, the company reports table 104 and/or the wireless users table 106 rely to access company information (e.g., a “primary key” of the companies table 82, and a “foreign key” of the tables that use that field to access the companies table 82). This field may be a unique identification of a company, or “CompanyID” field. It will be appreciated by one having ordinary skill in the art that companies table 82 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
In general, the contact table 84 includes information associated with a company, and in particular includes information about a location and/or division of the company. For example, the contact table 84 may include fields associated with the name of the company, an account number, a tax identification number, at least one contact number (e.g., phone, fax, extensions thereof, etc.), an address for the company (e.g., at least one address line, a city, state/province, county, zip, country, location code, etc.), a contact name, as well as other contact information. Moreover, and in specific embodiments, the contact table 84 includes at least one field upon which the LD services table 86, local services table 88, wireless orders table 90, product table 92, wireless inventory table 94, data services table 98 and/or equipment table 100 rely to access location and/or division information (e.g., a “primary key” of the contact table 84, and a “foreign key” of the tables that use that field to access the contact table 84). This field may be a unique identification of a division, location and/or contact, or “DivisionID” field. It will be appreciated by one having ordinary skill in the art that the contact table 84 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
In general, the LD services table 86 includes information associated with long distance phone services in turn associated with a carrier and/or company. For example, the LD services table 86 may include fields associated with a long distance phone number, data associated with a contract for long distance services (e.g., the date signed, the effective date, the term, the cost, the expiration date), intrastate rates, interstate rates, international rates, directory listings (e.g., local and national), billing and/or troubleshooting contact information, routing information (e.g., multi-carrier routing, time of day and/or day of week routing, menu routing, etc.), project information (e.g., a project associated with the long distance service), long distance circuit information (e.g., type of circuit, bandwidth, status, circuit cost, install date, activation date, a unique identification of the circuit, etc.), local exchange carrier (“LEC”) information (e.g., name, unique identification, type, access type, cost, install date, bandwidth, status, etc. of the LEC), protocol associated with the long distance service, a bit as to whether the long distance service is an 8XX number (e.g., an “800” number), as well as other long distance service information. Similarly, and also in general, the local services table 88 includes information associated with local phone services in turn associated with a particular carrier and/or company. For example, the local services table 88 may include fields associated with a local phone number, data associated with a contract for local services (e.g., the date signed, the effective date, the term, the cost, the expiration date), rates, billing and/or troubleshooting contact information, lines and/or channels associated with the local service, protocol associated with the local service, routing information, as well as other local service information. It will be appreciated by one having ordinary skill in the art that the LD services table 86 and/or local services table 88 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
In general, the wireless orders table 90 includes information associated with orders for wireless devices that are in turn associated with a carrier, company and/or wireless user. For example, the wireless orders table 90 may include fields associated with an employee and/or manager associated with an order (e.g., user identification, admin user identification, name, number, e-mail, etc.), the submitter of the order, an account associated with the order, a location associated with the order, address information associated with the order (e.g., shipping and/or billing information), an identification of inventory to replace, a reason for replacement of the inventory, minutes to add to a plan, the amount of the order, as well as other wireless order information. Also in general, the products table 92 includes information associated with wireless products that are in turn associated with a carrier and/or company. For example, the products table 92 may include fields associated with a product, signing date for the product, effective date of the product, expiration date of the product, the location to which the product is assigned, the carrier associated with the product and/or notes about the product, as well as other product information. Moreover, and in specific embodiments, the products table 92 includes at least one field upon which the wireless orders table 90 and/or wireless inventory table 94 rely to access wireless product information (e.g., a “primary key” of the products table 92, and a “foreign key” of the tables that use that field to access the products table 92). This field may be a unique identification of a product, or “ProductID” field. It will be appreciated by one having ordinary skill in the art that the wireless orders 90 and/or products table 92 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
In general, the wireless inventory table 94 includes information associated with wireless inventory, such as extra inventory or inventory that is being used, that is in turn associated with a carrier and/or company. For example, the wireless inventory table 94 may include fields associated with a product associated with a piece of inventory, a location and/or division associated with a piece of inventory, and a carrier associated with a piece of inventory. The wireless inventory table 94 may further include fields associated with the actual piece of inventory (e.g., a name, a description, etc.), an employee assigned the piece of inventory (e.g., their name, number, e-mail, manager, etc.), the status of the piece of inventory, account information associated with the piece of inventory (e.g., for example, an employee account, a corporate account and/or a general used to purchase the piece of inventory, as well as respective passwords associated therewith), purchase information associated with the piece of inventory (e.g., the purchase date and price, a warranty associated with the piece of inventory, a corporate discount used to purchase the piece of inventory, etc.), a vendor that supplied the piece of inventory, dates associated with the piece of inventor (e.g., for example, the activation date, expiration date, date the piece inventory may be upgraded and/or replaced, date shipped, date received, etc.), a phone number associated with the piece of inventory, a project associated with the piece of inventory (e.g., a project name, the project manager's name and e-mail, etc.), as well as other wireless inventory information. Moreover, and in specific embodiments, the wireless inventory table 94 includes at least one field upon which the invoices table 96 relies to access wireless inventory information (e.g., a “primary key” of the wireless inventory table 94, and a “foreign key” of the tables that use that field to access the wireless inventory table 94). This field may be a unique identification of a piece of wireless inventory, or “WInID” field. It will be appreciated by one having ordinary skill in the art that the wireless inventory table 94 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
The invoices table 96 generally includes information associated with invoices and/or invoices themselves that are in turn associated with wireless inventory, and in specific embodiments includes information relating to communication service expenses of a company from at least one service provider. Even further specifically, the invoices table 96 includes information relating to communication service expenses of a company from two or more service providers. In some embodiments, an invoice is an electronic document (e.g., e-mails with invoice information or files with invoice information, such as an electronic document in the .tiff format and/or .pdf format) and the information in the invoice is extracted then stored in the invoice table 96, along with a copy of the invoice. In alternative embodiments, such as when an invoice is a hard-copy document (e.g., a physical document that may be received through the mail), that invoice is scanned into an electronic document (e.g., into the .tiff format and/or .pdf format) and then information in the invoice is extracted and stored in the invoice table, along with an electronic copy of the invoice. It will be appreciated that, in either embodiment, the pages of the invoice may be singulated before they are stored. In the event that information from an invoice cannot be extracted, the information may be entered by hand. The invoices table 96 may include fields associated with information about an invoice (e.g., a carrier, name, item, group, location/division associated with the invoice, etc.), a cell phone associated with a portion of the invoice, the portion of the invoice associated with the cell phone, charges (e.g., typical usage charges, additional usage charges, credits, direct connect charges, monthly recurring charges, taxes, other charges, etc.), information associated with minutes (e.g., minutes in plan, minutes imported, voice/data/text minutes used, remaining voice/data/text minutes, etc.), information associated with calls (e.g., calls made, calls received, direct connects made, direct connects received, other counts, etc.), as well as other invoice information. It will be appreciated by one having ordinary skill in the art that the invoices table 96 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
The data services table 98 generally includes information associated with data services in turn associated with a carrier and/or company. For example, the data services may include Internet services provided by an Internet service provider (“ISP”) (e.g., a carrier) and/or wireless data services associated with a wireless service provider. For example, the data services table 98 may include fields associated with a type of data service request (e.g., an order type, a service type, etc.), a host, dates (e.g., the date the service is created, the date the service is edited, the date a contract is signed, effective dates associated with a contract, the expiration date of a contract, the term of a contract, an installation date, an activation date, a service date, etc.), whether a site is hosted, carrier information (e.g., the name of the carrier, whether the carrier is a specific type or brand of carrier, such as an LEC, an interexchange carrier, a managed network solutions carrier, a data carrier and/or a wireless carrier, whether the carrier is specific to a particular implementation, such as that the carrier is an ATM carrier, an international carrier and/or a service carrier, etc.), carrier account information (e.g., a carrier account number, carrier billing contacts, the monthly cost of the account, etc.), carrier contact information (e.g., the name, address, e-mail, phone number and/or fax number of a carrier, including dedicated trouble contact information for the carrier), information associated with the circuit provided by the carrier (e.g., an identification of the circuit, including an identification of the circuit type, method of access, loop type, bandwidth availability, whether it is international, as well as circuit speeds, etc.), information about access to the data service (e.g., port speeds, bandwidth, whether the access is burstable, primary DNS, secondary DNS, whether IP addresses are dynamic or static, whether IP addresses are serial or not, IP subnet masks, IP default gateways, the access type to the data service, a user name and password, etc.), the type of data service (e.g., wireless, DSL, the type of DSL, cable, a T-carrier, fiber, etc.), vendor information associated with the data service (e.g., an identification, contact, number, fax, cell, and e-mail of a contact, as well as an identification of the type of the vendor, etc.), data link connection information associated with the data service, network design information associated with the data service (e.g., a network design document, an approval number, an engineer, the engineer's number, contact information for the engineer, etc.), notes, as well as other data services information. It will be appreciated by one having ordinary skill in the art that the data services table 98 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
The equipment table 100 generally includes information associated with equipment, and more specifically equipment that may not be either wireless inventory or a product. For example, the equipment table 100 may include fields associated with an identification of the equipment (e.g., a unique identification of the equipment as well as the type of equipment, name, model identification, serial number, and version of the equipment, etc.), an order of the equipment (e.g., an order or order type, the purchase date, the purchase price, a warranty, a vendor associated with the order, etc.), a contract associated with the equipment (e.g., a customer number, a contract number, a contract term, a contract amount, the date a contract was signed, the expiration date of a contract, etc.), notes, as well as other equipment information. It will be appreciated by one having ordinary skill in the art that the equipment table 100 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
The reports table 102 generally includes information associated with reports and/or the reports themselves. As such, the reports table 102 may include information associated with system generated reports and/or custom reports. For example, the reports table 102 may include fields associated with a path for a report (e.g., a location to a report), a group report identification (in the event that a report is one of a group of a reports), a designation whether the report is custom, a custom report identification (if the report is custom), information concerning the type of report, and an identification of a company associated with the report. Moreover, and in specific embodiments, the reports table 102 includes at least one field upon which the company reports table 104 relies to access report information (e.g., a “primary key” of the reports table 102, and a “foreign key” of the tables that use that field to access the reports table 102). This field may be a unique identification of a report, or “ReportID” field. It will be appreciated by one having ordinary skill in the art that the reports table 102 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
The company reports table 104 generally includes information to link at least one report to a company. For example, the company reports table 104 may include fields associated with an identification of a company and an identification of a report, among other information. It will be appreciated by one having ordinary skill in the art that the company reports table 104 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
Finally, the database 36 may include a wireless users table 106 that generally includes information associated with users. For example, the wireless users table 106 may include fields associated with a name of a user (e.g., first and last name), their password, their contact information (e.g., phone number and e-mail), the expiration date of their wireless contract, whether the user has seen the license agreement for a service contract, the access level allowed to the wireless user, whether the user has access to view information for all users, locations and/or divisions of a company, the most recent activity of the user (e.g., last login, last phone called, last web-page visited, last activity, etc.), as well as other user information. Moreover, and in specific embodiments, the wireless users table 106 includes at least one field upon which the company wireless orders table 90 relies to access wireless user information (e.g., a “primary key” of the wireless users table 106, and a “foreign key” of the tables that use that field to access the wireless users table 106). This field may be a unique identification of a user, or “UserID” field. It will be appreciated by one having ordinary skill in the art that the wireless users table 106 may include more or fewer fields, and that those fields discussed above are merely illustrative and not intended to limit embodiments of the invention.
Those skilled in the art will recognize that environments illustrated in
Also for example, at least one of the computing system 12, upstream interface 24, rebranding interface 26 and/or client 28 may be configured on a public network, such as the Internet. As such, client 28 may be configured to communicate with the upstream interface 24, which may be a server configured to provide web pages to the client 28. In turn, the upstream interface 24 may be configured to communicate with the computing system 12 and the rebranding interface 30. Moreover, and in alternative embodiments, it will appreciated that the operation of the upstream interface 24 and/or rebranding interface 26 may be combined with the operation of the computing system 12. As such, the computing system 12 may be in direct communication with the client 28 through the network 22 rather than through the upstream interface 24 consistent with embodiments of the invention.
Moreover, it will be appreciated by one having ordinary skill in the art that the DBMS 34, the database 36, and the communication management application 38 may include more or fewer components than those illustrated in respective
The routines executed to implement the embodiments of the invention, whether implemented as part of an operating system or a specific application, system, sequence of operations, component, program, object, module or sequence of instructions executed to manage communications consistent with embodiments of the invention will be referred to herein as a “sequence of operations” or “program code.” The program code typically comprises one or more instructions that are resident at various times in various memory and storage devices in the system 10 and that, when read and executed by one or more processing units and/or CPUs of the computing system 12 and/or interface 24 and/or 26, cause that computing system 12 and/or interface 24, 26 to perform the steps necessary to execute steps, elements, and/or blocks embodying the various aspects of the invention.
While the invention has and hereinafter will be described in the context of fully functioning computing systems, those skilled in the art will appreciate that the various embodiments of the invention are capable of being distributed as a program product in a variety of forms, and that the invention applies equally regardless of the particular type of computer readable signal bearing media used to actually carry out the distribution. Examples of computer readable signal bearing media include but are not limited to recordable type media such as volatile and nonvolatile memory devices, floppy and other removable disks, hard disk drives, optical disks (e.g., CD-ROM's, DVD's, Blu-Ray discs, etc.), among others, and transmission type media such as digital and analog communication links.
In addition, various program code described hereinafter may be identified based upon the application or software component within which it is implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program nomenclature that follows is used merely for convenience, and thus the invention should not be limited to use solely in any specific application identified and/or implied by such nomenclature. Furthermore, given the typically endless number of manners in which computer programs may be organized into routines, procedures, methods, modules, objects, and the like, as well as the various manners in which program functionality may be allocated among various software layers that are resident within a typical computer (e.g., operating systems, libraries, APIs, applications, applets, etc.), it should be appreciated that the invention is not limited to the specific organization and allocation of program functionality described herein.
As such, the selected invoice is parsed to extract information (block 118). In specific embodiments, an invoice may be parsed with a parser (e.g., an invoice parser module) that includes a character recognition algorithm to break the invoice down into its constituent parts, and extract a plurality of items of data. An item of data may include at least a portion of a line of characters of an invoice, and specifically at least a portion of a line of characters of an invoice associated with data that corresponds to information configured to be stored in the database. For example, at least a portion of a line of an invoice may be associated with the total data services charge from a carrier and read “Total Data Charges: $819.80.” The parser may therefore be configured to determine that at least a portion of an item is “$819.80” and/or “819.80,” which is in turn associated with the total data charges for a company from a carrier. It will be appreciated that the parser may be configured to recognize various items of an invoice based on previous iterations of parsing invoices and/or based upon a template of the invoice that identifies items in the invoice to the parser. Specifically, the parser may be configured to recognize items that correspond to information configured to be stored in the database and appropriately classify that information.
With reference back to
When the item is valid (“Yes” branch of decision block 124), the item may be imported into the database, and in specific embodiments to an appropriate table and field of the database (block 132). In response to importing the item into the database (block 132) or in response to reclassifying, editing and/or importing the item into the database (block 128), it may then be determined whether there is at least one item of the invoice remaining to be validated and/or imported (block 134). When there is at least one item of the invoice remaining to be validated and/or imported (“Yes” branch of decision block 134), an additional item may be selected (block 136) and the sequence of operations 110 may return to block 122 to determine the validity of the item. When there is not at least one item of the invoice remaining to validated and/or imported (“No” branch of decision block 134), it may be determined whether there is at least one remaining invoice to parse (block 138). When there is at least one remaining invoice to parse (“Yes” branch of decision block 138) another invoice may be selected (block 140) and the sequence of operations 110 may proceed to block 118 to parse that invoice. When there is not at least one remaining invoice (“No” branch of decision block 138) the sequence of operations 110 may end (block 142). Thus, it will be appreciated that an invoice may be received, broken down into its constituent parts, and those parts may undergo quality assurance before being uploaded to a corresponding portion of a database. It will be appreciated that, in some embodiments, the invoices are stored in the database as well. As such, an invoice may be stored in whole or in part, and, when stored in part, the pages of an invoice may be singulated and stored individually. In this manner, and in response to user interaction to view at least a portion of an invoice, the page upon which that portion is disposed may be displayed. Specifically, only the page upon which that portion is disposed may be provided to be displayed, or the entire invoice may be provided to be displayed and the display may resolve to that page upon which the portion is disposed.
In response to the selection of a carrier, at least one device and/or network type associated with the request and/or the selected carrier may be selectively provided, and a selection for a device and/or network type may be received (block 156). For example, at least one device from a plurality of devices may be selectively displayed based upon devices that a company may wish to display (e.g., on a cost basis, on a bulk order basis, on the basis of inventory, on the basis of compatibility with the request for service, on the basis of compatibility with a selected carrier, etc.), and at least one network type from a plurality of network types may be selectively displayed based upon network types that a company may wish to display (e.g., on a cost basis, on a bulk contract basis, on the basis of compatibility with the request for service, on the basis of compatibility with a selected carrier, etc.). In response to the selection of a device and/or network type, at least one service may be selectively provided, and a selection for a service may be received (block 158). Thus, at least one service from a plurality of services may be displayed based upon the services that a company may wish to display (e.g., on a cost basis, on a bulk contract basis, on the basis of compatibility with the request for service, on the basis of compatibility with a selected carrier, on the basis of compatibility with a selected device and/or network type, etc.). For example, if a user requests a new wireless phone, a plurality of wireless phone service plans and/or wireless data service plans may be displayed. For a more specific example, the various wireless phone service plans may include indications of the numbers of minutes associated with the various wireless phone service plans, while the various wireless data service plans may include indications of the rates and level of accessibility with the various wireless data service plans. Thus, a company may display only certain types of services (e.g., local phone services, long distance phone services, data services, wireless phone services, wireless data services, etc.), as well as certain specific services (e.g., various rate based local and/or long distance services, bandwidth and/or access based data services, minutes based wireless phone services, direct connect wireless phone services, bandwidth and/or access based wireless data services, etc.).
In response to a selection of at least one service, it may be determined whether additional equipment associated with the requested service, the selected carrier, the selected device and/or network type, and/or the selected service is needed (block 160). For example, if a company is located in a jurisdiction that requires wireless phone users to use a wireless headset while driving, the company may determine that users located in that jurisdiction should be issued a wireless headset. When an additional piece of equipment and/or accessory is needed (“Yes” branch of decision block 160), the company may selectively provide at least one additional piece of equipment and/or accessory, and receive a selection for at least one additional piece of equipment and/or accessory (block 162). When an additional piece of equipment and/or accessory is not needed (“No” branch of decision block 160) and/or after a selection of at least one additional piece of equipment and/or accessory has been received (block 162), it may be determined whether the selected device, piece of equipment and/or accessory is present in inventory associated with the company (block 164).
When the selected device, piece of equipment and/or accessory is not present in inventory (“No” branch of decision block 164), an exception report may be generated and/or an entry about the lack of the selected device, piece of equipment and/or accessory in inventory may be added to an existing exception report (block 166), and a notification about the lack of inventory may be issued (block 168). For example, the notification of the lack of inventory may be sent to a person who procures inventory for a company, to the user who requested new service, to an administrative user and/or to a user who is otherwise associated with the request. When the selected device, piece of equipment and/or accessory is present in inventory (“Yes” branch of decision block 164) and/or after a notification that the selected device, piece of equipment and/or accessory is not in inventory (block 168), it may be determined whether a user associated with the request is valid (block 170). When a user associated with the request is invalid (“No” branch of decision block 170) an exception report may be generated and/or an entry about the invalidity of a user may be added to an existing exception report (block 172), and a notification of the invalidity of the user may be issued (block 174). For example, the notification of the invalidity of a user may be sent to a manager of the user, to the user who requested new service and/or to an administrative user. When the user associated with the request is valid (“Yes” branch of decision block 170), the order may be placed (block 176). In response to the notification of the invalidity of a user (block 174) and/or in response to the placement of an order (block 176), the sequence of operations may end (block 178).
When it is determined that a user requests a new accessory (block 190), at least one accessory is selectively displayed for the user to order (block 192). For example, at least one accessory from a plurality of accessories may be selectively displayed based upon accessories that a company may wish to display (e.g., on a cost basis, on a bulk order basis, on the basis of inventory, on a compatibility with devices basis, etc.). As such, the number associated with the request (e.g., a phone number), along with an identification of the accessory, notes about the request and/or order information (such as the identity of the person requesting the accessory, the identity of their manager, the identity of the person who will receive the accessory, where to ship the accessory, an account to charge, etc.) are captured (block 194).
When it is determined that a user requests maintenance (block 196) the number associated with the request (e.g., a phone number), along with information about the equipment and/or device associated with the maintenance request, as well as the maintenance request itself are captured (block 198). Similarly, when it is determined that a user requests to move a number to a new carrier (block 200), the number associated with the request, the identification of the new carrier, a selection of new equipment that may be required, a selection of at least one new accessory that may be required, notes about the request and/or order information (such as the identity of the person requesting the number transfer, the identity of their manager, the identity of the person whose number is subject to the transfer, an account to charge, etc.) are captured (block 202). In response to capturing information (blocks 188, 194, 198 and/or 202) order information associated with an order and/or request may be displayed for the user to confirm the information (block 204). Upon confirmation, the order and/or request may be submitted electronically (block 206).
In addition to displaying the expenses, trends of the expenses associated with inventory information may also be selectively displayed (block 220). For example, a start date and end date may be selected, and a graph displaying expense trends over that selected data range may be generated. Also, expenses associated with specific numbers may be selectively displayed (block 222). For example, the ten numbers associated with the most expenses, in relation to other numbers, may be displayed in regards to the last billing cycle, the total expenses within a time period (e.g., by year and/or by month range) and/or the total expenses for numbers associated with a particular location of a company. The expenses associated with specific numbers may be illustrated as a bar graph showing the various expenses per number and/or as a pie chart showing the relative percentage of the expenses to the total of the ten expenses with a key showing the numbers associated with those expenses. Moreover, and also in relation to specific numbers, minutes of plans associated with numbers may also be selectively displayed, including used minutes and/or remaining minutes of the plan associated with those numbers (block 224). For example, the ten numbers associated with the usage of the most minutes, in relation to other numbers, may be displayed in regard to the last billing cycle, the total minutes within a time period (e.g., by year and/or by month range) and/or the total minutes for numbers associated with a particular location of a company may be selectively displayed. The used minutes associated with specific numbers may be illustrated as a bar graph showing the various minutes per number and/or as a pie chart showing the relative percentage of the minutes to the total of the ten number's minutes with a key showing the numbers associated with those minutes. Alternatively, the remaining minutes of various numbers may be selectively displayed consistent with alternative embodiments of the invention.
In addition to expenses, trends thereof, and minutes of numbers, a summary of invoices associated with inventory information may also be displayed (block 226). For example, the summary of invoices may include information extracted from a plurality of invoices from a plurality of carriers for a specific location of a company. Thus, for a location, this summary may include an indication of the total monthly service charges, taxes, adjustments (e.g., credits, discounts, etc.), overages, an indication of the count of numbers associated with that location, the total number of minutes used and/or other charges. It will be appreciated that the inventory information, expenses, expense trends, expenses associated with specific numbers, minutes associated with specific numbers, and summary of invoices may be specific to a particular location of a company.
In some embodiments, a user may interact with at least a portion of the equipment and shipping summary, and in specific embodiments an entry (e.g., an equipment and/or shipping charge) of the equipment and shipping summary (block 256). In some embodiments, this interaction includes clicking and/or hovering over that entry. When a user interacts with an entry of the equipment and shipping summary (“Yes” branch of decision block 256) additional information associated with that entry (e.g., a user name, number, and/or account number associated with that entry in the equipment and shipping summary, etc.) is displayed (block 258). When the user does not interact with an entry of the equipment and shipping summary (“No” branch of decision block 256) it may be determined whether the user interacts with at least a portion of the general invoice information, and in specific embodiments, a link to an electronic copy of at least a portion of the invoice (block 260). When the user interacts with the link to the electronic copy (“Yes” branch of decision block 260), an electronic copy of at least a portion of the invoice associated with the general information of the invoice is displayed (block 262). It will be appreciated that the electronic copy may include an image file (e.g., a .pdf image, a .tiff image, etc.) of at least one page of the invoice. In some embodiments, to display the electronic copy, a singulated page is provided and displayed, while in alternative embodiments at least a portion of the invoice is provided and the page associated with the general information is displayed, while in further alternative embodiments the entire invoice is provided and the page associated with the general information is displayed. When the user does not interact with the link to the electronic copy (“No” branch of decision block 260), it may be determined that a user requests to view information associated with charges to at least one individual user, and thus information associated with charges to at least one individual user may be selectively displayed (block 264).
In response to displaying information associated with charges to at least one individual user, it may be determined whether a user interacts with at least a portion of the information associated with the at least one individual user, and in specific embodiments a graphical selection to display additional information about charges of the user and/or a link to an electronic copy of at least a portion of the invoice associated with that individual user (block 266). When it is determined that a user interacts with at least a portion of the information associated with at least one individual user (“Yes” branch of decision block 266), specific charges to at least one individual user may be selectively displayed in response to the user interaction when the user requests to display additional information about charges through the graphical selection (block 268) and/or an electronic copy of the at least a portion of the invoice associated with the individual user may be selectively displayed in response to the user interaction when the user selects the link to the electronic copy of the invoice associated with that individual user (block 270). For example, when additional information about charges is selectively displayed, information associated with monthly recurring charges, credits, taxes, additional usage charges, other charges, minutes and/or other usage of a service associated with that individual user may be displayed. Also for example, and similar to block 262, to display the electronic copy of the at least a portion of the invoice associated with the individual user, a singulated page associated with the charges to the individual user may be provided and displayed, at least a portion of the invoice associated with the charges to the individual user may be provided and the first page associated with the charges to the individual user may be displayed, and/or the entire invoice may be provided and the first page associated with the charges to the individual user may be displayed.
When it is determined that the user does not interact with at least a portion of the information associated with at least one individual user (“No” branch of decision block 266) the sequence of operations 250 may continue monitoring for requests from the user to view invoice information and/or user interaction with invoice information (not shown), or the sequence of operations 250 may end (block 272).
Alternatively, a user may request to build a custom report (block 282) and, in response to user interaction to build that custom report, information to include in the custom report may be determined from interaction to select at least one of a location, a date range, a dataset, at least one field of the dataset and/or comparison criteria (block 286). In response to the selection of at least one criteria, a custom report may be built and displayed (block 288). In response to displaying at least one report and/or a custom report (e.g., blocks 284 and/or 288), the report and/or the custom report may be saved, deleted, edited and/or exported (block 290).
Further details and embodiments of the invention will be described by way of descriptions of the following display representations.
For example,
In addition to information associated with inventory, information associated with at least one invoice may also be displayed separate from inventory information. For example,
In addition to general information, the invoice information selection menu 374 may be further configured to display more specific information about a selected invoice, including user totals, recurring charges, credits and/or adjustment, other charges, taxes, additional information, minutes and/or direct connection information associated with the selected invoice. For example,
Although not illustrated in
While embodiments of the present invention have been illustrated by a description of the various embodiments and the examples, and while these embodiments have been described in considerable detail, it is not the intention of the applicants to restrict or in any way limit the scope of the appended claims to such detail. Additional advantages and modifications will readily appear to those skilled in the art. For example, orders and/or requests submitted by a user may be subject to approval. As such, an approving manager may be notified of any order and/or request. Specifically, the approving manager may be sent an e-mail regarding an order and/or request, or be notified of an order and/or request upon logging in. In turn, a link may be displayed to a web page that displays information associated with the order and/or request. As such, the approving manager may select the link and deny, modify or accept the order and/or request. In some embodiments, the approving manager modifies the order and/or request by substituting at least a portion of the order and/or request. In specific embodiments, an order and/or request involves a request for a new wireless phone. The approving manager may modify the order and/or request to specify that the user receives a different wireless phone than the requested wireless phone (e.g., the requested wireless phone is too expensive, and the newly specified wireless phone is less expensive). In response to the denial, modification or acceptance of the order and/or request, fields and/or tables associated therewith may be updated appropriately. It will be appreciated that, in alternative embodiments, a user profile includes an indication whether an order and/or request by that user must be approved, such that, if the indication indicates that if that user's orders and/or request do not need to be approved, an order and/or request by that user is automatically approved and processed upon submission.
Moreover, an interface for configuring alerts based upon rules may also be provided. For example, a rule may include providing an indication associated with when a long distance service associated with a location is set to expire. As such, an administrator may set up the rule such that, on a date that the long distance service is set to expire and/or on a date in advance of the expiration (e.g., by specifying the DD/MM/YYYY of the expiration), an alert is generated and e-mailed to one or more users. Also for example, a rule may include providing an indication associated with when a user is removed, such as in the event of that user's termination, resignation and/or death. The administrator may set up the rule such that, upon an indication of the user's termination, resignation and/or death, an alert is generated and e-mail to one or more users. As such, those users may begin removing services and/or expenditures associated with the user. It will be appreciated by one having skill in the art that the administrator may configured the alerts as appropriate. [00100] Also for example, and with respect to
Thus, the invention in its broader aspects is therefore not limited to the specific details, representative apparatus and method, and illustrative example shown and described. In particular, any of the blocks of the above flowcharts may be deleted, augmented, made to be simultaneous with another, combined, or be otherwise altered in accordance with the principles of the present invention. For example, although at least some blocks in
Other modifications will be apparent to one of ordinary skill in the art. Therefore, the invention lies in the claims hereinafter appended.
This application is related to U.S. patent application Ser. No. ______ to Trent McCracken and Troy McCracken, entitled “MANAGEMENT OF COMMUNICATIONS PURCHASING AND USE” (SPENET-02US2) and filed on even date herewith, which application is incorporated by reference herein, and is further related to and claims the benefit of U.S. Patent Application Ser. No. 61/047,231 to Trent McCracken and Troy McCracken entitled “MANAGEMENT OF COMMUNICATIONS PURCHASING AND USE” (SPENET-02P) and filed on Apr. 23, 2008, which application is incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
61047231 | Apr 2008 | US |