US20140278660A1 - Methods for generating a work-order in real time and devices thereof - Google Patents

Methods for generating a work-order in real time and devices thereof Download PDF

Info

Publication number
US20140278660A1
US20140278660A1 US14/030,864 US201314030864A US2014278660A1 US 20140278660 A1 US20140278660 A1 US 20140278660A1 US 201314030864 A US201314030864 A US 201314030864A US 2014278660 A1 US2014278660 A1 US 2014278660A1
Authority
US
United States
Prior art keywords
computing device
mobile computing
work
order
set forth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/030,864
Inventor
James W. D'Amico
Paul M. Baccaro
Matthew Smith
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Desco LLC
Original Assignee
Profit Strategies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Profit Strategies Inc filed Critical Profit Strategies Inc
Priority to US14/030,864 priority Critical patent/US20140278660A1/en
Assigned to Profit Strategies, Inc. reassignment Profit Strategies, Inc. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BACCARO, PAUL M., D'AMICO, JAMES W., SMITH, MATTHEW
Publication of US20140278660A1 publication Critical patent/US20140278660A1/en
Assigned to DESCO, LLC reassignment DESCO, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Profit Strategies, Inc.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06313Resource planning in a project environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0219Discounts or incentives, e.g. coupons or rebates based on funds or budget
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0283Price estimation or determination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0611Request for offers or quotes

Definitions

  • the present invention relates to a method and device for generating a work-order in real time, and is generally suitable for any type of service provider who utilizes new equipment or replacement parts in delivering a service to a customer.
  • Service providers such as electricians, plumbers, heating/cooling contractors who provide installation and repair services for commercial and/or residential customers, are tasked with diagnosing problems raised by their customers, initiating the repair service, completing the service, and completing the financial transaction associated with the service.
  • One difficulty that these service providers have is the ability to efficiently estimate costs for parts and repair services.
  • the typical way of performing cost estimations is a highly manual endeavor, although certain individual contractors or their employers may have standard repair services with flat rate charges. Estimating the cost of parts, which are subject to price variability levied by the distributors that contractors use, adds further complexity to the process.
  • cost estimation systems being manual, inefficiencies naturally occur, and much time and effort is wasted in generating a work order with repair service and parts fee estimates, and then closing out a transaction with a customer.
  • the present invention is directed to overcoming these and other deficiencies in the art.
  • a first aspect of the present invention relates to a method for generating a work-order in real time.
  • the method includes the steps of obtaining, by a mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating by the mobile computing device a work-order in real-time based on the determined fee.
  • a second aspect of the present invention relates to a non-transitory computer readable medium having stored thereon instructions for generating a work-order in real time, and including machine executable code which when executed by at least one processor, causes the processor to perform steps including: obtaining, by a mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating, by the mobile computing device, a work-order in real-time based on the determined fee.
  • a third aspect of the present invention relates to a mobile computing device that includes one or more processors and a memory, wherein the memory is coupled to the one or more processors which are configured to execute programmed instructions stored in the memory including: obtaining, by the mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating, by the mobile computing device, a work-order in real-time based on the determined fee.
  • FIG. 1 is a block diagram of an exemplary mobile computing device for generating work-order in real-time
  • FIGS. 2A-2B are exemplary flowcharts for generating a work-order in real-time
  • FIG. 3 is an exemplary flowchart illustrating the mobile computing device receiving user information
  • FIG. 4 is an exemplary block diagram illustrating the mobile computing device obtaining database from a server
  • FIGS. 5A-5D is an exemplary flowchart illustrating the mobile computing device suggesting search items
  • FIG. 6A-C illustrate an exemplary parts reordering system
  • FIG. 6A is an exemplary flowchart illustrating a method for parts reordering
  • FIG. 6B illustrates one embodiment for distributor interface with the mobile computer device for automated parts reordering
  • FIG. 6C illustrates the relationship between multiple technicians employed by a single contractor and their ability to access parts from one or more distributors and their outlets;
  • FIG. 7 is an exemplary flowchart illustrating a method for determining and applying a fee adjustment (for cost recovery);
  • FIGS. 8A-B are exemplary flowcharts illustrating a method for determining a discount value to be applied to a work order as a whole ( FIG. 8A ) or per selected repair ( FIG. 8B );
  • FIG. 9 is an exemplary block diagram illustrating the mobile computing device displaying a work-order
  • FIG. 10 is an exemplary flowchart for a method of auto-payment for a user's maintenance of a positive work-order balance
  • FIGS. 11A-B are graphs illustrating an exemplary parts mark-up protocol without ( FIG. 11A ) and with ( FIG. 11B ) use of an algorithm to smooth transitions between different mark-up categories;
  • FIG. 12 is an exemplary flowchart for a method of synchronizing data from the inventive devices to a device operating accounting software such as QuickBooksTM.
  • FIG. 1 An exemplary environment 10 including a mobile computing device 14 and plurality of servers 16 for generating a work-order in real-time is illustrated in FIG. 1 .
  • “generating a work-order” is intended to encompass the completion of a finalized work-order that can be presented to a customer for review and then approved by the customer before work is commenced. This is the end result of a process of opening a new work-order, and populating the work-order with one or more service fees and/or parts fees, as appropriate. This process is described in greater detail below.
  • the exemplary environment 10 includes the mobile computing device 14 and the servers 16 , data server 17 , Re-order parts electronically (ROPE) database 40 and distributor devices 42 , which are coupled together by a communication network 30 , although the environment can include other types and numbers of devices, components, elements, and communication networks 30 in other topologies and deployments. While not shown, the exemplary environment 10 may include additional components, such as databases, etc., which are well known to those of ordinary skill in the art and thus will not be described here. This technology provides a number of advantages including providing more effective methods, non-transitory computer readable medium and devices for generating a work-order in real time.
  • ROPE Re-order parts electronically
  • the mobile computing device 14 assists with generating a work-order in real time as illustrated and described with the examples herein, although mobile computing device 14 may perform other types and numbers of functions.
  • the mobile computing device 14 includes at least one CPU/processor 18 , memory 20 , input device 22 A and display device 22 B, and communication interface 24 , which are all coupled together by bus 26 , although mobile computing device 14 may comprise other types and numbers of elements such as an antenna for receiving analog or digital signals in other configurations.
  • Processor(s) 18 may execute one or more computer-executable instructions stored in the memory 20 for the methods illustrated and described with reference to the examples herein, although the processor(s) can execute other types and numbers of instructions and perform other types and numbers of operations.
  • the processor(s) 18 may comprise one or more central processing units (“CPUs”) or general purpose processors with one or more processing cores, such as AMD® processor(s), although other types of processor(s) could be used (e.g., Intel®).
  • Memory 20 may comprise one or more tangible storage media, such as RAM, ROM, flash memory, CD-ROM, floppy disk, hard disk drive(s), solid state memory, DVD, or other memory storage types or devices, including combinations thereof, which are known to those of ordinary skill in the art.
  • Memory 20 may store one or more non-transitory computer-readable instructions of this technology as illustrated and described with reference to the examples herein that may be executed by the one or more processor(s) 18 .
  • the flow chart shown in FIGS. 2A-2B is representative of example steps or actions of this technology that may be embodied or expressed as one or more non-transitory computer or machine readable instructions stored in memory 20 that may be executed by the processor(s) 18 .
  • Input device 22 A enables a user, such as a contractor, to interact with the mobile computing device 14 , such as to input and/or view data and/or to configure, program and/or operate it.
  • input device 22 A may include one or more of a touch screen, keyboard and/or a computer mouse.
  • the display device 22 B enables a user, such as an administrator, to interact with the mobile computing device 14 , such as to view and/or input information and/or to configure, program and/or operate it by way of example only.
  • the display device 22 B may include one or more of a CRT, LED monitor, LCD monitor, or touch screen display technology although other types and numbers of display devices could be used.
  • the communication interface 24 in the mobile computing device 14 is used to operatively couple and communicate between the mobile computing device 14 , the servers 16 data server 17 , Re-order parts electronically (ROPE) database 40 , distributor devices 42 , although other types and numbers of systems, devices, components, elements and/or networks with other types and numbers of connections and configurations can be used.
  • the mobile computing device 14 can interact with other devices via a communication network 30 such as Local Area Network (LAN), analog radio signals, digital radio signals and Wide Area Network (WAN) and can use TCP/IP over Ethernet and industry-standard protocols, including NFS, CIFS, SOAP, XML, LDAP, and SNMP, although other types and numbers of communication networks, can be used.
  • the bus 26 is a hyper-transport bus, although other types of buses and/or other links may be used, such as PCI.
  • Each of the servers 16 and the data server 17 includes a central processing unit (CPU) or processor, a memory, a communication interface, input device and display device, which are coupled together by a bus or other link, although each could have other types and numbers of elements and/or other types and numbers of network devices could be used in this environment.
  • the servers 16 may run applications which assist the servers 16 to respond to requests from the mobile computing device 14 , although the server may run other types or amounts of applications.
  • the mobile computing device 14 can use data server 17 to send a notification to replenish parts to the re-order parts electronically (ROPE) database 40 .
  • the servers 16 can also be configured to include the contents of the data server 17 .
  • environment 10 also includes a ROPE database 40 which includes information associated with parts required for repairs, although the ROPE database can include other types or amounts of information.
  • the data server 17 interacts with the ROPE database 40 via the communication network 30 , although the data server 17 can interact with the ROPE database 40 via other topologies.
  • the distributor devices 42 can upload data associated with the parts to the ROPE database 40 via the communication network 30 , although the distributor and the ROPE database 40 can interact through other network topologies.
  • Each of the distributor devices 42 includes a central processing unit (CPU) or processor, a memory, a communication interface, input device and display device, which are coupled together by a bus or other link, although each could have other types and numbers of elements and/or other types and numbers of network devices could be used in this environment.
  • the distributor devices 42 may run applications which with uploading parts data to the ROPE database 40 to respond to requests from the data server 17 or the mobile computing device 14 , although the server may run other types or amounts of applications.
  • each of the methods of the examples may be conveniently implemented using one or more general purpose computer systems, microprocessors, digital signal processors, and micro-controllers, programmed according to the teachings of the examples, as described and illustrated herein, and as will be appreciated by those of ordinary skill in the art.
  • the examples may also be embodied as the non-transitory computer readable medium having instructions stored thereon for one or more aspects of the technology as described and illustrated by way of the examples herein, which when executed by a processor (or configurable hardware), cause the processor to carry out the steps necessary to implement the methods of the examples, as described and illustrated herein.
  • FIGS. 1-11 illustrate the generation of finalized a work order for the repair or installation services of a contractor, by way of example only, an electrician, a plumber, or a heating and cooling technician.
  • an exemplary process begins at step 205 with a mobile computing device 14 sending out a request to connect to a server 16 including multiple databases via the communication network 30 , although the mobile computing device 14 can connect to the server 16 using any other methods or techniques.
  • the multiple databases within the server 16 include repair options, although the databases can include any other information or items.
  • step 210 the mobile computing device 14 once connected to server 16 sends out registration information and profile settings to the server 16 .
  • An exemplary process of the mobile computing device 14 receiving registration information from a user of the mobile computing device 14 will now be explained with reference to FIG. 3 .
  • step 305 the user of the mobile computing device 14 signs up for an account and use of an application within the mobile computing device 14 using a web-browser, although the user of the mobile computing device 14 can alternatively sign up directly from the previously downloaded application executing with the mobile computing device 14 .
  • the user of the mobile computing device 14 may enter user name and password using the input device 22 A as the process of signing up, although the user of the mobile computing device 14 may enter other types or amounts of information such as user location information or other demographic details.
  • the mobile computing device 14 receives user information associated with the user of the mobile computing device 14 such as name, company name, location, although the mobile computing device 14 can receive other types or amounts of information associated with the user of the mobile computing device 14 .
  • the mobile computing device 14 receives labor rates such as day rates, off-hour rates or other rates from the user of the mobile computing device 14 via the input device 22 A.
  • the mobile computing device 14 receives a parts mark up via the input device 22 A.
  • the mobile computing device 14 determines if there is a requirement for a service call diagnostic fee based on information received in step 305 and 310 , although the mobile computing device 14 can determine the requirement for the service call diagnostic fee using other techniques such as by displaying a message on the display device 22 B and receiving a response from the user using the input device 22 A. If the mobile computing device 14 determines that a diagnostic fee is required, a Yes branch is taken to step 330 where the mobile computing device 14 receives the service call diagnostic fee from the user of the mobile computing device 14 via the input device 22 A. However, if the mobile computing device 14 determines that the diagnostic fee is not required, a No branch is taken to step 335 .
  • step 335 the mobile computing device 14 determines a requirement of sales tax information based on the geographical location of the user of the mobile computing device 14 , although the mobile computing device 14 can determine the requirement of sales tax based on other parameters. If the mobile computing device 14 determines that sales tax information is required, a Yes branch is taken to step 340 where the mobile computing device 14 receives the sales tax information from the user of the mobile computing device 14 via the input device 22 A, although the mobile computing device 14 can automatically obtain the sales tax information from a database (not shown) without requiring the user of the mobile computing device 14 to enter the information. However, if the mobile computing device 14 determines that there is no requirement for sales tax information, a No branch is taken to step 345 .
  • step 345 the mobile computing device 14 determines if there is a requirement for maintenance agreement. If the mobile computing device 14 determines that there is a requirement for maintenance agreement, a Yes branch is taken to step 350 where the mobile computing device 14 receives the maintenance agreement information from the user of the mobile computing device 14 via the input device 22 A, although the mobile computing device 14 can receive the maintenance agreement information from a database without having the user of the mobile computing device 14 to enter the information. However, if the mobile computing device determines that there is no requirement for having a maintenance agreement, a No branch is taken to step 360 .
  • step 360 the mobile computing device 14 receives credit card information such as card type, card number, expiry date, full name on the card and the CVV of the credit card of the user of the mobile computing device 14 via the input device 22 A.
  • step 365 the mobile computing device 14 determines if the received credit card information is valid by matching the received information against the information stored in a credit card database (not shown), although the mobile computing device 14 can determine the validity of the credit card using other techniques. If the mobile computing device 14 determines that the received credit card information is not valid, a No branch is taken back to step 360 where the mobile computing device 14 may request the user to reenter the credit card information until completing a successful validation.
  • step 370 the mobile computing device 14 sends the registration information, diagnostic fees, sales tax fees, maintenance agreements, and the credit card information to one of the server 16 confirming successful registration.
  • the mobile computing device 14 can generate and apply a tag (custom label) to the registration information and the profile settings so that this information can be associated with a particular user of the mobile computing device 14 .
  • Tags can be applied to individual users or collectively to large groups of users (i.e., all technicians employed by a particular contractor, or all technicians approved to use a particular parts distributor).
  • An individual user account may have multiple tags associated with his/her mobile computing device 14 .
  • These tags applied by the mobile computing device 14 can be later used by the mobile computing device 14 for one or more of applying discounts (including manufacturer rebates passed along to customers, discounts applied to certain types of work), displaying or providing notifications to the user of the mobile computing device 14 , not requiring the user to enter credit card information for the second time (or at all, if the user is associated with a vendor whose contract does not require it), and associating technicians with preferred parts distributors.
  • the tags can be used for other purposes. Use of these tags by the mobile computing device 14 can assist a user in quickly and effectively generating the finalized work-order in real time.
  • tagging could be used for the purpose of identification.
  • the mobile computing device 14 can apply a first time user tag to obtain a certain number of work-orders without payment (which can be applied to a work-order balance associated with the user's account).
  • the first time user tag can optionally be used to exclude the fee adjustment (cost recovery) process, as described hereinafter, for all “free” work-orders credited to the user's account.
  • the one or more configurations within the mobile computing device 14 could be automatically reconfigured by the mobile computing device 14 based on the applied tag. For instance, for all technicians associated with a particular contractor, the contractor may have a pre-authorized charge for work-orders on a periodic basis (e.g., daily, weekly, etc.) that allows those technicians to open new work-orders without regard to maintaining a positive work-order balance (discussed in greater detail below).
  • a periodic basis e.g., daily, weekly, etc.
  • this technology provides advantages of the mobile computing device 14 having a customized configuration for a particular user of the mobile computing device 14 .
  • step 215 as a response to sending the registration information and profile settings, the mobile computing device 14 receives an activation code from the server 16 confirming the registration, although the mobile computing device and the server can confirm the registration using any other methods or techniques.
  • the mobile computing device 14 obtains one of the databases including items for repairs from the server 16 , although the mobile computing device can download any other database from the server including any amount of information in any format.
  • the mobile computing device 14 displays a progress indicator on the display device 22 B indicating the percentage of progress of obtaining one of the database including items for repairs from the server 16 .
  • the mobile computing device 14 restarts the process of obtaining the remaining data files and after all the data files have been processed, the mobile computing device 14 saves a success flag (to prevent retries), wherein the mobile computing device 14 automatically updates the database and continues to the next step of the exemplary process.
  • the mobile computing device 14 receives the one of the database from the server 16 with data which is split (the server splits the data), although the mobile computing device 14 can receive the database in any other format.
  • the mobile computing device 14 adds each file to a manifest file along with any supporting metadata.
  • the mobile computing device 14 further encodes the split data files and the manifest file as JSON documents to take advantage of the performance of the native parsing built into a web browser. This method of encoding of the data provides advantages of preventing a web browser from crashing as large files can lead to exhausting the memory thereby leading to failure of the web browser.
  • this technique of encoding optimizes the size of the data files to be as large as possible without overwhelming the capabilities of the weaker mobile computing device 14 .
  • the mobile computing device 14 loads and parses the manifest file and the data files to a queue present within the memory 20 of the mobile computing device 14 and any old data on the mobile computing device 14 is deleted, although the mobile computing device 14 can store the old data at any memory location.
  • the mobile computing device 14 persist the data in the queue by wrapping a series of SQL INSERTS in a single transaction.
  • database synchronization can be carried out either automatically (e.g., daily at prescribed time), periodically at the discretion of a user (i.e., forced synchronization), or both. Synchronization allows the mobile computing device 14 to utilize the most up-to-date data concerning parts pricing and/or labor times associated with the repairs.
  • the mobile computing device 14 can be used to create a new work-order, populate the work-order with fees for service or parts, and generate a finalized work-order as described herein.
  • a user may authorize, via the mobile computing device 14 , each work-order transaction individually by paying for each work-order as it is opened.
  • a user may establish with his/her account a pre-paid work-order balance that allows automated replenishment of the work-order balance if the balance equals (or falls below) a threshold level set by the user. This will allow the user to avoid having to individually authorize payment each time a work-order is opened.
  • step 1005 the mobile computing device 14 creates a new work-order and also decrements a work-order balance.
  • the mobile computing device 14 determines if the work-order balance is equal to a threshold number.
  • the threshold number can be set arbitrarily as 0, 1, 2, 3, or any other positive integer, as desired by the user. If the mobile computing device 14 determines that the work-order balance is equal to the threshold number, a No branch is taken back to step 1005 , where additional work-orders can be opened (and finalized work-orders can be generated, as further illustrated below in step 235 of FIG. 2A ).
  • step 1015 the mobile computing device 14 determines if the current account has been registered to automatically pay for an additional amount of work-orders. If the mobile computing device 14 determines that the current account has been registered to automatically pay, a Yes branch is taken to step 1020 where a pre-defined number of work-orders are purchased and then credited at step 1030 to the work-order balance associated with the user's account. However, if the mobile computing device 14 determines that the current account has not been registered to automatically pay, a No branch is taken to step 1025 .
  • step 1025 the mobile computing device 14 obtains account information, or credit/debit card information from the user which could be used to purchase the work-order. Once the work-order(s) have been purchased, in step 1030 , the mobile computing device 14 credits the work-order balance associated with the user's account.
  • the mobile computing device 14 After opening a new work-order, having already obtaining the database from the server 16 , in step 225 , the mobile computing device 14 identifies items in the database.
  • items relate to possible repair items, including repair services and parts although items can include any amount of any other information in any format. Additionally, in this example, the mobile computing device 14 identifies the items in the database by searching in the obtained database. The mobile computing device 14 searches the database by receiving one or more search terms via the input device 22 A, although the mobile computing device can receive the search terms using any other methods or techniques.
  • the server 16 constructs a weighted suffix trie, which is later obtained by the mobile computing device 14 to provide suggestions to complete the search terms.
  • the methods or functions performed by the server 16 could also be performed by the mobile computing device 14 .
  • server 16 can also be a part of the mobile computing device 14 .
  • An exemplary method of the server 16 constructing the weighted suffix trie will now be described. To add a phrase, the server 16 starts at the root node of the trie, and checks to see if any of the child nodes match the first letter of the phrase.
  • a weighted suffix trie is an ideal data structure for the index. It reduces storage and memory requirements because words with common prefixes share nodes. Also the trie structure is very efficient for quickly exploring alternative words and spellings. By adding weights to the data, the most likely suffixes for partial search terms can be found.
  • the search starts at the root node, and creates a path for the child nodes: “r” and “c” ( FIG. 5B ).
  • the first has a distance of zero, because it is an exact match to the first “r” in “rerur”.
  • the “c” has a distance of two because it is not a match.
  • the list of paths looks this:
  • the mobile computing device 14 uses selection of the provided suggestions to search for the items in the database, although the mobile computing device 14 can use any other methods or techniques to search for the items in the database.
  • the techniques illustrated above provides advantages when the mobile computing device 14 receives search terms in a search box, suggestions are shown to: reduce the amount of typing required, show alternative spellings when the user has mistyped, and give feedback about the likelihood of a match while waiting for the full search results to load. This is especially important on the mobile computing device 14 because the search is slower, and the smaller keyboards make typing more cumbersome and errors more likely.
  • the mobile computing device 14 determines a fee based on fee setting parameters.
  • the mobile computing device 14 determines the fee based on an item markup percentage, sales tax and any of a variety of service rates including day rates, off-hour rates or any other associated rates previously received in step 210 , although the mobile computing device 14 can determine the fee based on any other or types or parameters.
  • the mobile computing device 14 can also use a custom setting present within the mobile computing device 14 to determine the fee.
  • the mobile computing device 14 will multiply the cost of the part against a markup multiplier received in step 210 to determine the final sale price. This multiplier is based on the cost of the part, with less expensive parts typically having a higher multiplier.
  • these markups are described as a series of ranges, as illustrated in the table below:
  • the mobile computing device 14 determines the item markup percentage using a markup range and a smoothing function which will now be described using the following equation, although the mobile computing device 14 can calculate the item markup percentage can be using any other methods or techniques:
  • I is a markup for inexpensive parts
  • E is a markup for expensive parts
  • C is a cost of the part
  • L is a minimum part cost
  • H is a maximum part cost
  • S is a maximum smoothing
  • V is a curve variation and the value of C should be between L and H, as a precondition for the equation.
  • the algorithm returns the value of I or E respectively.
  • the maximum smoothing and curve variation are defined to achieve the desired curve shape in an otherwise step-shaped markup graph shown in FIG. 11A . This allows for a more aggressive decrease in the markup as the part cost increases.
  • the fee determined by the mobile computing device 14 can be a customized fee saved in a database.
  • a user may have a discounted service fees for certain customers (i.e., volume-related discounts), and the customized fees can be accessed from the database for those customers.
  • the mobile computing device 14 generates a work-order in real-time based on the determined fee and the selected items, although the mobile computing device can generate the work order using any other parameters.
  • the work order includes the list of all the selected items (repair items), parts associated with the repair items and diagnostic fees, maintenance fees, the associated fee of the selected items and the total fee, although the mobile computing device can generate the work-order using any combination of fee parameters as well as other parameters.
  • the mobile computing device 14 prior to finalizing the generated the work order, performs one or more of determining a cost recovery fee adjustment, applying a discount, or determining for availability of parts required for repairs within the generated work-order, although the mobile computing device 14 may perform other operations prior to finalizing the generated the work-order in real time.
  • step 605 the mobile computing device 14 obtains all the list and quantity of all the parts required for the repairs present within the generated work-order, although the mobile computing device can obtain other information from the generated work-order.
  • step 610 the mobile computing device 14 determines using a data server 17 , if the obtained list of parts is available within the ROPE database 40 , although the mobile computing device 14 can determine without using the data server 17 .
  • the mobile computing device 14 compares the list and quantity of obtained parts against a table (which includes the list and quantities of all parts present within a parts warehouse) present within the ROPE database 40 to determine the availability, although the mobile computing device 14 can determine the availability using other techniques.
  • the mobile computing device 14 using the data server 17 sends out a notification to the ROPE database 40 to replenish the required parts.
  • the user of the mobile computing device 14 can manually choose to submit all parts consumed for replenishment or only a subset of those parts, export a list of the remaining parts, or augment the order with other parts using the mobile computing device 14 .
  • a contractor with multiple technicians may elect to aggregate consumed parts on a regular or as-needed basis, and collectively order parts as frequently as desired.
  • the ROPE database 40 then forwards this notification to the distributor device to replenish the parts.
  • This interaction is further explained with reference to FIG. 6B .
  • the distributor device 42 uploads the parts data to the ROPE database 40 , although the distributor device 42 can upload other types or amounts of information.
  • the mobile computing device 14 sends the list of parts required for the repair to the data server 17 , although the mobile computing device 14 can send other information present in the work-order to the data server 17 .
  • the data server 14 sends a list of manufacturer part numbers for the list of parts received from the mobile computing device 14 to the ROPE database 40 .
  • step 4 the ROPE database 40 performs a search to determine further details associated with the parts back to the data server 17 .
  • the data server 17 sends a notification to replenish the parts to the ROPE database 40 .
  • step 6 the ROPE database 40 forwards the notification to the distributor device 42 to replenish the parts.
  • FIG. 6C illustrates the environment of the mobile computing device 14 , data server 17 , ROPE database 40 and distributor device 42 .
  • A-H are employees associated with a contractor using the mobile computing device 14 and S-Z are location associated with the distributor device 42 , although the employees A-H could be associated with multiple contractors and locations S-Z could be associated with multiple distributers. These relations between the employees-contractors and locations-distributors may be established using tags previously illustrated.
  • the ROPE database establishes relationships between the mobile computing device 14 (contractors) and the distributor device 42 such that any mobile computing device 14 can order parts from any distributor device 42 for which a relationship has been established in the system.
  • the number of mobile computing device 14 and distributor device 42 relationship may be established or dissolved at any time.
  • a secondary relationship between the employee using the mobile computing device 14 and the distributor location may be established such that a specific employee may order from a specific distributor location.
  • step 705 the mobile computing device 14 obtains the fee associated with each repair of the work-order, although the mobile computing device 14 can also obtain the aggregate fee for all repairs in the work order.
  • step 710 the mobile computing device 14 determines a fee adjustment value for the obtained repair fee.
  • the mobile computing device 14 can determine the fee adjustment value based on a pre-defined fee adjustment value (cost recovery value) stored within the database (not shown), although the mobile computing device 14 can determine the fee adjustment value based on other parameters.
  • This fee adjustment value can be applied once per work-order or, in the instance of complicated work-orders containing many repairs, the fee adjustment value can be applied more than once per work-order, if desired.
  • the fee adjustment value can be applied to the first repair and every other repair, or third or fourth repair, thereafter.
  • the mobile computing device 14 can determine a fee adjustment value for the total sum of all repairs within the generated work-order based on the pre-defined fee adjustment value. Regardless of the approach used, in step 715 the mobile computing device 14 applies the determined fee adjustment value to the repair fee(s) in the generated work-order.
  • step 805 the mobile computing device 14 obtains the total fee present within the generated work-order.
  • step 810 the mobile computing device 14 determines a discount value (which can be a promotional code, or a coupon value) to be applied to the obtained total fee.
  • the mobile computing device 14 can determine the discount value based one or more of the tags applied to the user account, a coupon code or a promotional code received from a user via the input device 22 A, a pre-defined discount value based on the total fee in the invoice, or a pre-defined discount value based on the total number of repairs within the invoice, although the mobile computing device 14 can determined the discount value based on other parameters (e.g., discount associated with a maintenance agreement or manufacturer rebate passed along to customer).
  • the mobile computing device 14 applies the determined discount value to the total fee in the generated work-order.
  • the mobile computing device 14 can obtain fees associated with one or more selected repairs within the generated work-order, and apply any discount selectively to the one or more repairs. For example, in step 825 , the mobile computing device 14 obtains the fee amount per selected repair in the generated work order. In step 830 , the mobile computing device 14 determines a discount value (which can be a promotional code, or a coupon value, as described above) to be applied to the obtained fee, which has been selected by a user. Next, in step 835 , the mobile computing device 14 applies the determined discount value to the selected repair fee in the generated work-order, and the total sum of all repair fees can be generated for the whole work-order.
  • a discount value which can be a promotional code, or a coupon value, as described above
  • the mobile computing device 14 provides the generated work-order to fit within the display device 22 B using techniques which will now be illustrated, although the mobile computing device 14 can provide the generated work-order using any other methods or techniques.
  • the mobile computing device 14 divides the display device 22 B into two types of pages a navigation page and a content page. When on a navigation page, the mobile computing device 14 displays a list of items. Upon receiving a selection of the listed items, the mobile computing device 14 loads another navigation page or a content page. Additionally, if the display device 22 B of the mobile computing device 14 is wide enough, the navigation page will show a summary/placeholder page to the right of the navigation pane as illustrated in FIG. 9 .
  • the navigation will not be shown—unless the browser is wide enough to accommodate both navigation and content—and a “back” button will be provided by the mobile computing device 14 .
  • the back button provided by the mobile computing device 14 would assist with moving back to the previous navigation page.
  • This illustrated technique provides advantages of changing the user interface on the display device to adjust based on the width of the browser viewport, which is independent of the mobile computing device 14 . Additionally, the illustrated technique can adjust the presence of the navigation in response to resizing of the browser window and orientation changes of mobile computing devices. Furthermore, the illustrated technique can be implemented on any device and the technique does not rely on detecting device's make or model.
  • step 245 the mobile computing device 14 determines if any changes are necessary to the provided work-order based on inputs received at the input device 22 A of the mobile computing device, although the mobile computing device can determine necessary changes using any other methods or techniques. In this example, the mobile computing device 14 can receive any necessary changes or confirmation via the input device 22 A to the provided generated work-order. If the mobile computing device 14 determines any changes are needed for the provided work-order, a Yes branch is taken to step 250 to obtain the changes to the work order and then to generate a revised work-order.
  • step 255 the invoice for the work order is generated by the mobile computing device 14 based on the total fee present within the generated work-order.
  • the mobile computing device 14 can receive a signature on the work-order via the input device 22 A confirming the details of the work-order.
  • step 260 the mobile computing device 14 determines if a fee set forth in the invoice has been paid. If the mobile computing device 14 determines that the fee in the invoice has been paid, a Yes branch is taken to step 270 to update the generated invoice and the work-order in the database. However, if the mobile computing device 14 determines that the fee set forth in claim invoice has not been paid, a No branch is taken to step 265 where the mobile computing device 14 can either wait until the fee has been paid and then proceed to update the work-order and invoice. Alternatively, the mobile computing device 14 can wait until a certain period of time, by way of example only 30 days, after which the mobile computing device 14 can automatically update the work-order and the invoice to the database and store or archive the work-order and the invoice.
  • step 270 while updating the work-order and the invoice to the database in the server, the mobile computing device 14 first checks whether there is a network connection between the mobile computing device 14 and the server 16 . If the mobile computing device determines that there is a network connection (online) between the mobile computing device 14 and the server 16 , a Yes branch is taken to step 280 where the mobile computing device 14 directly uploads or stores the work-order and the invoice to the databases present in the server 16 , although the mobile computing device 14 can save the work-order locally within the memory 20 and then uploaded to database present in the server 16 .
  • a network connection online
  • step 275 the mobile computing device 14 uploads or stores the work-order in the previously obtained database from the server 16 (which is stored within the memory of the mobile computing device), and once the network connection is established between the mobile computing device 14 and the server 16 , the mobile computing device 14 proceeds to update the database present in the server 16 , with the one present within the memory 20 of the mobile computing device 14 . Additionally, the mobile computing device 14 can automatically receives notification from the server 16 where there are any updates determined by the server 16 .
  • step 285 the mobile computing device 14 closes the work-order and the exemplary process ends.
  • the mobile computing device 14 may provide rewards upon successful completion of work-orders and/or closing of work-orders upon receipt of payment.
  • the mobile computing device 14 can add the amount present in the invoice to the account associated with the user of the mobile computing device 14 , and reward the user by notifying the user of the number of completed work-orders over a period of time, the percentage of completed work-orders that are closed with payment of the invoice, the aggregate sum of invoices over a period of time, whether the user is in, e.g., the top 25% percent of technicians employed by a particular contractor, etc.
  • the mobile computing device 14 can provide notification (triggers) via text message, email or on the display device 22 B indicating the rewards supplied to the user.
  • a further aspect of the invention includes the ability to synchronize the completed invoice data or completed but unpaid work-order data or customer data from the inventive device and method to accounting software such as QuickBooksTM and back from the accounting software such as QuickBooksTM to the inventive device. This can be achieved using tagged database records, and synchronization of the tagged records.
  • An exemplary method for data synchronizing is illustrated in FIG. 12 .

Abstract

A method, non-transitory computer readable medium, and a mobile computing device comprises obtaining one or more databases from one or more sources; identifying one or more items in the obtained one or more databases; determining a fee for the identified one or more items based on one or more fee setting parameters; and generating a work-order in real-time based on the determined fee.

Description

  • This application claims the priority benefit of provisional U.S. Patent Application Ser. No. 61/798,637, filed Mar. 15, 2013, which is hereby incorporated by reference in its entirety.
  • FIELD OF THE INVENTION
  • The present invention relates to a method and device for generating a work-order in real time, and is generally suitable for any type of service provider who utilizes new equipment or replacement parts in delivering a service to a customer.
  • BACKGROUND OF THE INVENTION
  • Service providers, such as electricians, plumbers, heating/cooling contractors who provide installation and repair services for commercial and/or residential customers, are tasked with diagnosing problems raised by their customers, initiating the repair service, completing the service, and completing the financial transaction associated with the service. One difficulty that these service providers have is the ability to efficiently estimate costs for parts and repair services. The typical way of performing cost estimations is a highly manual endeavor, although certain individual contractors or their employers may have standard repair services with flat rate charges. Estimating the cost of parts, which are subject to price variability levied by the distributors that contractors use, adds further complexity to the process. As a result of existing cost estimation systems being manual, inefficiencies naturally occur, and much time and effort is wasted in generating a work order with repair service and parts fee estimates, and then closing out a transaction with a customer.
  • It would be desirable, therefore, to develop a device and method that allows a service provider to efficiently generate a work order in the field, in real time, using routinely updated parts and service fees, present the work order to the customer for immediate approval, initiate and complete the agreed upon service, and optionally complete payment transactions for services rendered. Increased efficiencies on the transactional side of these services will allow for decreased time allocation to the transaction and, therefore, increased profitability. Further, through the use of flat-rate pricing and automated, scaled parts markup during work-order generation, increased profitability can be achieved.
  • The present invention is directed to overcoming these and other deficiencies in the art.
  • SUMMARY OF THE INVENTION
  • A first aspect of the present invention relates to a method for generating a work-order in real time. The method includes the steps of obtaining, by a mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating by the mobile computing device a work-order in real-time based on the determined fee.
  • A second aspect of the present invention relates to a non-transitory computer readable medium having stored thereon instructions for generating a work-order in real time, and including machine executable code which when executed by at least one processor, causes the processor to perform steps including: obtaining, by a mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating, by the mobile computing device, a work-order in real-time based on the determined fee.
  • A third aspect of the present invention relates to a mobile computing device that includes one or more processors and a memory, wherein the memory is coupled to the one or more processors which are configured to execute programmed instructions stored in the memory including: obtaining, by the mobile computing device, one or more databases from one or more sources; identifying, by the mobile computing device, one or more items in the obtained one or more databases; determining, by the mobile computing device, a fee for the identified one or more items based on one or more fee setting parameters; and generating, by the mobile computing device, a work-order in real-time based on the determined fee.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of an exemplary mobile computing device for generating work-order in real-time;
  • FIGS. 2A-2B are exemplary flowcharts for generating a work-order in real-time;
  • FIG. 3 is an exemplary flowchart illustrating the mobile computing device receiving user information;
  • FIG. 4 is an exemplary block diagram illustrating the mobile computing device obtaining database from a server;
  • FIGS. 5A-5D is an exemplary flowchart illustrating the mobile computing device suggesting search items;
  • FIG. 6A-C illustrate an exemplary parts reordering system, where FIG. 6A is an exemplary flowchart illustrating a method for parts reordering, FIG. 6B illustrates one embodiment for distributor interface with the mobile computer device for automated parts reordering, and FIG. 6C illustrates the relationship between multiple technicians employed by a single contractor and their ability to access parts from one or more distributors and their outlets;
  • FIG. 7 is an exemplary flowchart illustrating a method for determining and applying a fee adjustment (for cost recovery);
  • FIGS. 8A-B are exemplary flowcharts illustrating a method for determining a discount value to be applied to a work order as a whole (FIG. 8A) or per selected repair (FIG. 8B);
  • FIG. 9 is an exemplary block diagram illustrating the mobile computing device displaying a work-order;
  • FIG. 10 is an exemplary flowchart for a method of auto-payment for a user's maintenance of a positive work-order balance;
  • FIGS. 11A-B are graphs illustrating an exemplary parts mark-up protocol without (FIG. 11A) and with (FIG. 11B) use of an algorithm to smooth transitions between different mark-up categories; and
  • FIG. 12 is an exemplary flowchart for a method of synchronizing data from the inventive devices to a device operating accounting software such as QuickBooks™.
  • DETAILED DESCRIPTION OF THE INVENTION
  • An exemplary environment 10 including a mobile computing device 14 and plurality of servers 16 for generating a work-order in real-time is illustrated in FIG. 1. As used herein, “generating a work-order” is intended to encompass the completion of a finalized work-order that can be presented to a customer for review and then approved by the customer before work is commenced. This is the end result of a process of opening a new work-order, and populating the work-order with one or more service fees and/or parts fees, as appropriate. This process is described in greater detail below.
  • The exemplary environment 10 includes the mobile computing device 14 and the servers 16, data server 17, Re-order parts electronically (ROPE) database 40 and distributor devices 42, which are coupled together by a communication network 30, although the environment can include other types and numbers of devices, components, elements, and communication networks 30 in other topologies and deployments. While not shown, the exemplary environment 10 may include additional components, such as databases, etc., which are well known to those of ordinary skill in the art and thus will not be described here. This technology provides a number of advantages including providing more effective methods, non-transitory computer readable medium and devices for generating a work-order in real time.
  • The mobile computing device 14 assists with generating a work-order in real time as illustrated and described with the examples herein, although mobile computing device 14 may perform other types and numbers of functions. The mobile computing device 14 includes at least one CPU/processor 18, memory 20, input device 22A and display device 22B, and communication interface 24, which are all coupled together by bus 26, although mobile computing device 14 may comprise other types and numbers of elements such as an antenna for receiving analog or digital signals in other configurations.
  • Processor(s) 18 may execute one or more computer-executable instructions stored in the memory 20 for the methods illustrated and described with reference to the examples herein, although the processor(s) can execute other types and numbers of instructions and perform other types and numbers of operations. The processor(s) 18 may comprise one or more central processing units (“CPUs”) or general purpose processors with one or more processing cores, such as AMD® processor(s), although other types of processor(s) could be used (e.g., Intel®).
  • Memory 20 may comprise one or more tangible storage media, such as RAM, ROM, flash memory, CD-ROM, floppy disk, hard disk drive(s), solid state memory, DVD, or other memory storage types or devices, including combinations thereof, which are known to those of ordinary skill in the art. Memory 20 may store one or more non-transitory computer-readable instructions of this technology as illustrated and described with reference to the examples herein that may be executed by the one or more processor(s) 18. The flow chart shown in FIGS. 2A-2B is representative of example steps or actions of this technology that may be embodied or expressed as one or more non-transitory computer or machine readable instructions stored in memory 20 that may be executed by the processor(s) 18.
  • Input device 22A enables a user, such as a contractor, to interact with the mobile computing device 14, such as to input and/or view data and/or to configure, program and/or operate it. By way of example only, input device 22A may include one or more of a touch screen, keyboard and/or a computer mouse.
  • The display device 22B enables a user, such as an administrator, to interact with the mobile computing device 14, such as to view and/or input information and/or to configure, program and/or operate it by way of example only. By way of example only, the display device 22B may include one or more of a CRT, LED monitor, LCD monitor, or touch screen display technology although other types and numbers of display devices could be used.
  • The communication interface 24 in the mobile computing device 14 is used to operatively couple and communicate between the mobile computing device 14, the servers 16 data server 17, Re-order parts electronically (ROPE) database 40, distributor devices 42, although other types and numbers of systems, devices, components, elements and/or networks with other types and numbers of connections and configurations can be used. By way of example only, the mobile computing device 14 can interact with other devices via a communication network 30 such as Local Area Network (LAN), analog radio signals, digital radio signals and Wide Area Network (WAN) and can use TCP/IP over Ethernet and industry-standard protocols, including NFS, CIFS, SOAP, XML, LDAP, and SNMP, although other types and numbers of communication networks, can be used. In this example, the bus 26 is a hyper-transport bus, although other types of buses and/or other links may be used, such as PCI.
  • Each of the servers 16 and the data server 17 includes a central processing unit (CPU) or processor, a memory, a communication interface, input device and display device, which are coupled together by a bus or other link, although each could have other types and numbers of elements and/or other types and numbers of network devices could be used in this environment. In this example, the servers 16 may run applications which assist the servers 16 to respond to requests from the mobile computing device 14, although the server may run other types or amounts of applications. Additionally, in this example, the mobile computing device 14 can use data server 17 to send a notification to replenish parts to the re-order parts electronically (ROPE) database 40. In another example, the servers 16 can also be configured to include the contents of the data server 17.
  • As illustrated in FIG. 1, environment 10 also includes a ROPE database 40 which includes information associated with parts required for repairs, although the ROPE database can include other types or amounts of information. In this example, the data server 17 interacts with the ROPE database 40 via the communication network 30, although the data server 17 can interact with the ROPE database 40 via other topologies. Additionally, the distributor devices 42 can upload data associated with the parts to the ROPE database 40 via the communication network 30, although the distributor and the ROPE database 40 can interact through other network topologies.
  • Each of the distributor devices 42 includes a central processing unit (CPU) or processor, a memory, a communication interface, input device and display device, which are coupled together by a bus or other link, although each could have other types and numbers of elements and/or other types and numbers of network devices could be used in this environment. In this example, the distributor devices 42 may run applications which with uploading parts data to the ROPE database 40 to respond to requests from the data server 17 or the mobile computing device 14, although the server may run other types or amounts of applications.
  • It is to be understood that the methods of the examples described herein are for exemplary purposes, as many variations of the specific hardware and software used to implement the examples are possible, as will be appreciated by those skilled in the relevant art(s).
  • Furthermore, each of the methods of the examples may be conveniently implemented using one or more general purpose computer systems, microprocessors, digital signal processors, and micro-controllers, programmed according to the teachings of the examples, as described and illustrated herein, and as will be appreciated by those of ordinary skill in the art.
  • The examples may also be embodied as the non-transitory computer readable medium having instructions stored thereon for one or more aspects of the technology as described and illustrated by way of the examples herein, which when executed by a processor (or configurable hardware), cause the processor to carry out the steps necessary to implement the methods of the examples, as described and illustrated herein.
  • Exemplary methods for generating work-order in real-time will now be described below with reference to FIGS. 1-11, which illustrate the generation of finalized a work order for the repair or installation services of a contractor, by way of example only, an electrician, a plumber, or a heating and cooling technician.
  • Particularly with reference to FIG. 2A, an exemplary process begins at step 205 with a mobile computing device 14 sending out a request to connect to a server 16 including multiple databases via the communication network 30, although the mobile computing device 14 can connect to the server 16 using any other methods or techniques. In this example, the multiple databases within the server 16 include repair options, although the databases can include any other information or items.
  • In step 210, the mobile computing device 14 once connected to server 16 sends out registration information and profile settings to the server 16. An exemplary process of the mobile computing device 14 receiving registration information from a user of the mobile computing device 14 will now be explained with reference to FIG. 3. In step 305, the user of the mobile computing device 14 signs up for an account and use of an application within the mobile computing device 14 using a web-browser, although the user of the mobile computing device 14 can alternatively sign up directly from the previously downloaded application executing with the mobile computing device 14. By way of example only, the user of the mobile computing device 14 may enter user name and password using the input device 22A as the process of signing up, although the user of the mobile computing device 14 may enter other types or amounts of information such as user location information or other demographic details. In step 310, the mobile computing device 14 receives user information associated with the user of the mobile computing device 14 such as name, company name, location, although the mobile computing device 14 can receive other types or amounts of information associated with the user of the mobile computing device 14. Next, in step 315 after successful registration, the mobile computing device 14 receives labor rates such as day rates, off-hour rates or other rates from the user of the mobile computing device 14 via the input device 22A. In step 320, the mobile computing device 14 receives a parts mark up via the input device 22A. Next in step 325, the mobile computing device 14 determines if there is a requirement for a service call diagnostic fee based on information received in step 305 and 310, although the mobile computing device 14 can determine the requirement for the service call diagnostic fee using other techniques such as by displaying a message on the display device 22B and receiving a response from the user using the input device 22A. If the mobile computing device 14 determines that a diagnostic fee is required, a Yes branch is taken to step 330 where the mobile computing device 14 receives the service call diagnostic fee from the user of the mobile computing device 14 via the input device 22A. However, if the mobile computing device 14 determines that the diagnostic fee is not required, a No branch is taken to step 335. In step 335, the mobile computing device 14 determines a requirement of sales tax information based on the geographical location of the user of the mobile computing device 14, although the mobile computing device 14 can determine the requirement of sales tax based on other parameters. If the mobile computing device 14 determines that sales tax information is required, a Yes branch is taken to step 340 where the mobile computing device 14 receives the sales tax information from the user of the mobile computing device 14 via the input device 22A, although the mobile computing device 14 can automatically obtain the sales tax information from a database (not shown) without requiring the user of the mobile computing device 14 to enter the information. However, if the mobile computing device 14 determines that there is no requirement for sales tax information, a No branch is taken to step 345. In step 345, the mobile computing device 14 determines if there is a requirement for maintenance agreement. If the mobile computing device 14 determines that there is a requirement for maintenance agreement, a Yes branch is taken to step 350 where the mobile computing device 14 receives the maintenance agreement information from the user of the mobile computing device 14 via the input device 22A, although the mobile computing device 14 can receive the maintenance agreement information from a database without having the user of the mobile computing device 14 to enter the information. However, if the mobile computing device determines that there is no requirement for having a maintenance agreement, a No branch is taken to step 360. In step 360, the mobile computing device 14 receives credit card information such as card type, card number, expiry date, full name on the card and the CVV of the credit card of the user of the mobile computing device 14 via the input device 22A. Next, in step 365, the mobile computing device 14 determines if the received credit card information is valid by matching the received information against the information stored in a credit card database (not shown), although the mobile computing device 14 can determine the validity of the credit card using other techniques. If the mobile computing device 14 determines that the received credit card information is not valid, a No branch is taken back to step 360 where the mobile computing device 14 may request the user to reenter the credit card information until completing a successful validation. However, if the mobile computing device 14 determines that the credit card is valid, a Yes branch is taken to step 370 where the mobile computing device 14 sends the registration information, diagnostic fees, sales tax fees, maintenance agreements, and the credit card information to one of the server 16 confirming successful registration.
  • Additionally in this example, the mobile computing device 14 can generate and apply a tag (custom label) to the registration information and the profile settings so that this information can be associated with a particular user of the mobile computing device 14. Tags can be applied to individual users or collectively to large groups of users (i.e., all technicians employed by a particular contractor, or all technicians approved to use a particular parts distributor). An individual user account may have multiple tags associated with his/her mobile computing device 14.
  • These tags applied by the mobile computing device 14 can be later used by the mobile computing device 14 for one or more of applying discounts (including manufacturer rebates passed along to customers, discounts applied to certain types of work), displaying or providing notifications to the user of the mobile computing device 14, not requiring the user to enter credit card information for the second time (or at all, if the user is associated with a vendor whose contract does not require it), and associating technicians with preferred parts distributors. The tags can be used for other purposes. Use of these tags by the mobile computing device 14 can assist a user in quickly and effectively generating the finalized work-order in real time.
  • As previously illustrated, tagging could be used for the purpose of identification. By way of example only, if the user of the mobile computing device 14 is a first time user, the mobile computing device 14 can apply a first time user tag to obtain a certain number of work-orders without payment (which can be applied to a work-order balance associated with the user's account). In this instance, the first time user tag can optionally be used to exclude the fee adjustment (cost recovery) process, as described hereinafter, for all “free” work-orders credited to the user's account.
  • In another example, the one or more configurations within the mobile computing device 14 could be automatically reconfigured by the mobile computing device 14 based on the applied tag. For instance, for all technicians associated with a particular contractor, the contractor may have a pre-authorized charge for work-orders on a periodic basis (e.g., daily, weekly, etc.) that allows those technicians to open new work-orders without regard to maintaining a positive work-order balance (discussed in greater detail below). By changing the one or more configurations, this technology provides advantages of the mobile computing device 14 having a customized configuration for a particular user of the mobile computing device 14.
  • With respect to FIG. 2A, in step 215, as a response to sending the registration information and profile settings, the mobile computing device 14 receives an activation code from the server 16 confirming the registration, although the mobile computing device and the server can confirm the registration using any other methods or techniques.
  • Next in step 220, the mobile computing device 14 obtains one of the databases including items for repairs from the server 16, although the mobile computing device can download any other database from the server including any amount of information in any format. In this example, the mobile computing device 14 displays a progress indicator on the display device 22B indicating the percentage of progress of obtaining one of the database including items for repairs from the server 16. However, in this example, if the connection between the mobile computing device 14 and the server 16 terminates before downloading all the data, the mobile computing device 14 restarts the process of obtaining the remaining data files and after all the data files have been processed, the mobile computing device 14 saves a success flag (to prevent retries), wherein the mobile computing device 14 automatically updates the database and continues to the next step of the exemplary process.
  • Additionally in this example, as further illustrated in FIG. 4, in this example, the mobile computing device 14 receives the one of the database from the server 16 with data which is split (the server splits the data), although the mobile computing device 14 can receive the database in any other format. The mobile computing device 14 adds each file to a manifest file along with any supporting metadata. Further in this example, the mobile computing device 14 further encodes the split data files and the manifest file as JSON documents to take advantage of the performance of the native parsing built into a web browser. This method of encoding of the data provides advantages of preventing a web browser from crashing as large files can lead to exhausting the memory thereby leading to failure of the web browser. Additionally, this technique of encoding optimizes the size of the data files to be as large as possible without overwhelming the capabilities of the weaker mobile computing device 14. Further, the mobile computing device 14 loads and parses the manifest file and the data files to a queue present within the memory 20 of the mobile computing device 14 and any old data on the mobile computing device 14 is deleted, although the mobile computing device 14 can store the old data at any memory location. The mobile computing device 14 persist the data in the queue by wrapping a series of SQL INSERTS in a single transaction.
  • It should also be appreciated that database synchronization can be carried out either automatically (e.g., daily at prescribed time), periodically at the discretion of a user (i.e., forced synchronization), or both. Synchronization allows the mobile computing device 14 to utilize the most up-to-date data concerning parts pricing and/or labor times associated with the repairs.
  • Having obtained the databases, the mobile computing device 14 can be used to create a new work-order, populate the work-order with fees for service or parts, and generate a finalized work-order as described herein. In one approach, a user may authorize, via the mobile computing device 14, each work-order transaction individually by paying for each work-order as it is opened. Alternatively, a user may establish with his/her account a pre-paid work-order balance that allows automated replenishment of the work-order balance if the balance equals (or falls below) a threshold level set by the user. This will allow the user to avoid having to individually authorize payment each time a work-order is opened.
  • An exemplary method will be further explained with reference to FIG. 10. In step 1005, the mobile computing device 14 creates a new work-order and also decrements a work-order balance. Next in step 1010, the mobile computing device 14 determines if the work-order balance is equal to a threshold number. The threshold number can be set arbitrarily as 0, 1, 2, 3, or any other positive integer, as desired by the user. If the mobile computing device 14 determines that the work-order balance is equal to the threshold number, a No branch is taken back to step 1005, where additional work-orders can be opened (and finalized work-orders can be generated, as further illustrated below in step 235 of FIG. 2A). However, if the mobile computing device 14 determines that the work-order balance is equal to the threshold number, then a Yes branch is taken to step 1015. In step 1015, the mobile computing device 14 determines if the current account has been registered to automatically pay for an additional amount of work-orders. If the mobile computing device 14 determines that the current account has been registered to automatically pay, a Yes branch is taken to step 1020 where a pre-defined number of work-orders are purchased and then credited at step 1030 to the work-order balance associated with the user's account. However, if the mobile computing device 14 determines that the current account has not been registered to automatically pay, a No branch is taken to step 1025. In step 1025, the mobile computing device 14 obtains account information, or credit/debit card information from the user which could be used to purchase the work-order. Once the work-order(s) have been purchased, in step 1030, the mobile computing device 14 credits the work-order balance associated with the user's account.
  • After opening a new work-order, having already obtaining the database from the server 16, in step 225, the mobile computing device 14 identifies items in the database. In this example, items relate to possible repair items, including repair services and parts although items can include any amount of any other information in any format. Additionally, in this example, the mobile computing device 14 identifies the items in the database by searching in the obtained database. The mobile computing device 14 searches the database by receiving one or more search terms via the input device 22A, although the mobile computing device can receive the search terms using any other methods or techniques.
  • Using a list of common phrases the server 16 constructs a weighted suffix trie, which is later obtained by the mobile computing device 14 to provide suggestions to complete the search terms. In another example, the methods or functions performed by the server 16 could also be performed by the mobile computing device 14. Alternatively, server 16 can also be a part of the mobile computing device 14. An exemplary method of the server 16 constructing the weighted suffix trie will now be described. To add a phrase, the server 16 starts at the root node of the trie, and checks to see if any of the child nodes match the first letter of the phrase. If there is a match, the server 16 increases the weight of the path to that child node by one, and that child node becomes the new current node—and will be searched for the next letter in the received phrase. If the letter is not found, a new child node is added with a starting weight of one. This cycle repeats until all the letters in the phrase have been added by the server 16, and then a final node is added with a stop character ($) to indicate the end of the word (FIG. 5A). In this example, a weighted suffix trie is an ideal data structure for the index. It reduces storage and memory requirements because words with common prefixes share nodes. Also the trie structure is very efficient for quickly exploring alternative words and spellings. By adding weights to the data, the most likely suffixes for partial search terms can be found.
  • An exemplary operation will now be described considering an example as illustrated in FIGS. 5B-5D. A search for the closest matches for “rerur” will result in the following:
  • The search starts at the root node, and creates a path for the child nodes: “r” and “c” (FIG. 5B). The first has a distance of zero, because it is an exact match to the first “r” in “rerur”. The “c” has a distance of two because it is not a match. The list of paths (sorted by distance) looks this:
  • Phrase Distance
    R 0
    C 2
  • Since the “r” path is the closest, the children will be followed. The distance is still zero because the “e” is an exact match.
  • Phrase Distance
    Re 0
    C 2
  • The closest path “re” is followed, and a path is added for each of its children. In this example, “rev” scores lower than “c” because the distance is the same and “c” has a higher weight in the tree. Also in this example, “ret” got a distance of one. Usually a wrong letter increases the distance by two. However, in this example the algorithm detected that proximity of the “t” and “r” (from “rerur”) on the keyboard, and gave it a lower distance penalty.
  • Phrase Distance
    Rer
    0
    Ret 1
    C 2
    Rev 2
  • The “rer” path is followed, and it is still an exact match for the search phrase.
  • Phrase Distance
    Reru
    0
    Ret 1
    C 2
    Rev 2
  • Once again, the top phrase is followed but this time, when expanded to “rerun”, it is no longer an exact match and falls to the bottom of the list.
  • Phrase Distance
    Ret 1
    C 2
    Rev 2
    rerun 2
  • “ret” is followed, which adds two paths to the list “retu” and “reta”. The former maintains distance because the “u” is an exact match, but the later moves away by two.
  • Phrase Distance
    Retu 1
    C 2
    Rev 2
    rerun 2
    Reta 3
  • Following “retu”, produces “retur” and “return”, again with no change in distance. In the next step the two children are added producing the following list.
  • Phrase Distance
    return$ 1
    returns 1
    c 2
    rev 2
    rerun 2
    reta 3
  • Since “return” has hit a stop character ($), it is removed from the list of active paths and put into the first position of the results list. After the next step the same thing happens with “returns” leaving the following active paths:
  • Phrase Distance
    c
    2
    rev 2
    rerun 2
    reta 3
  • So, the search hops back over to the “c” path, which changes the phrase to “co” giving it a distance of four.
  • Phrase Distance
    rev
    2
    rerun 2
    reta 3
    co 4
  • The path for “rev” is followed to produce “reve” with a distance of four.
  • Phrase Distance
    rerun
    2
    reta 3
    co 4
    reve 4
  • Finally, “rerun” gets another chance and hits the end of word character, so it is put on the end of the results, which are now: return, returns, rerun. The above illustrated techniques will continue until: there are no more paths to search, it has collected the max number of results requested, or the distance of the closest path is outside of a “closeness” threshold. At any of these points, the current results are returned and displayed on the display device 22B by the mobile computing device 14.
  • The mobile computing device 14 uses selection of the provided suggestions to search for the items in the database, although the mobile computing device 14 can use any other methods or techniques to search for the items in the database. The techniques illustrated above provides advantages when the mobile computing device 14 receives search terms in a search box, suggestions are shown to: reduce the amount of typing required, show alternative spellings when the user has mistyped, and give feedback about the likelihood of a match while waiting for the full search results to load. This is especially important on the mobile computing device 14 because the search is slower, and the smaller keyboards make typing more cumbersome and errors more likely.
  • Next, based on the identified items, in step 230 the mobile computing device 14 determines a fee based on fee setting parameters. In this example, the mobile computing device 14 determines the fee based on an item markup percentage, sales tax and any of a variety of service rates including day rates, off-hour rates or any other associated rates previously received in step 210, although the mobile computing device 14 can determine the fee based on any other or types or parameters. The mobile computing device 14 can also use a custom setting present within the mobile computing device 14 to determine the fee. When calculating the sale price of parts, the mobile computing device 14 will multiply the cost of the part against a markup multiplier received in step 210 to determine the final sale price. This multiplier is based on the cost of the part, with less expensive parts typically having a higher multiplier. Typically these markups are described as a series of ranges, as illustrated in the table below:
  • Price Range
    Above Below Markup
    $2.00 5
    $2.00 $5.00 5
    $5.00 $10.00 4
    $10.00 $20.00 3.5
    $20.00 $40.00 3
    $40.00 $60.00 2.75
    $60.00 $100.00 2.5
    $100.00 $150.00 2.25
    $150.00 $500.00 2
    $500.00 1.3
  • By way of example only, an $8 part would fall in the $5-10 range and the multiplier would be four, giving a final sale price of $32 ($8×4). This markup creates an unusual circumstance when crossing the boundaries between ranges (as illustrated in FIG. 11A). For example: A $4.50 part has a markup of 5×, resulting in a sale price of $22.50; but a $5.10 part, which has a markup of 4×, would have a sale price of just $20.40, making it less expensive than the $4.50 part.
  • Additionally, in this example, the mobile computing device 14 determines the item markup percentage using a markup range and a smoothing function which will now be described using the following equation, although the mobile computing device 14 can calculate the item markup percentage can be using any other methods or techniques:

  • I+(E−I)+((C−L)/(H−L))1/S×((C−L)/(H−L)) 1/v
  • wherein I is a markup for inexpensive parts, E is a markup for expensive parts, C is a cost of the part, L is a minimum part cost, H is a maximum part cost, S is a maximum smoothing and V is a curve variation and the value of C should be between L and H, as a precondition for the equation. However, when C is less than L or greater than H, then the algorithm returns the value of I or E respectively. In this example, the maximum smoothing and curve variation are defined to achieve the desired curve shape in an otherwise step-shaped markup graph shown in FIG. 11A. This allows for a more aggressive decrease in the markup as the part cost increases. However, regardless of the shape of the markup curve, as the multipliers for expensive and inexpensive parts converge, the resulting markups conveniently flatten out, turning into a flat line when the two multipliers are equal. By creating a function that can calculate a continuous markup multiplier for any part price, the choppiness can be removed (compare FIGS. 11A-B) and less costly parts will not get marked up to a higher sales price than more expensive parts.
  • Optionally, the fee determined by the mobile computing device 14 can be a customized fee saved in a database. For example, a user may have a discounted service fees for certain customers (i.e., volume-related discounts), and the customized fees can be accessed from the database for those customers.
  • Next in step 235, the mobile computing device 14 generates a work-order in real-time based on the determined fee and the selected items, although the mobile computing device can generate the work order using any other parameters. In this example, the work order includes the list of all the selected items (repair items), parts associated with the repair items and diagnostic fees, maintenance fees, the associated fee of the selected items and the total fee, although the mobile computing device can generate the work-order using any combination of fee parameters as well as other parameters. In this example, prior to finalizing the generated the work order, the mobile computing device 14 performs one or more of determining a cost recovery fee adjustment, applying a discount, or determining for availability of parts required for repairs within the generated work-order, although the mobile computing device 14 may perform other operations prior to finalizing the generated the work-order in real time.
  • An exemplary method for determining availability of parts required for repair within the generated work-order will now be illustrated with reference to FIGS. 6A-6C. In step 605, the mobile computing device 14 obtains all the list and quantity of all the parts required for the repairs present within the generated work-order, although the mobile computing device can obtain other information from the generated work-order. Next in step 610, the mobile computing device 14 determines using a data server 17, if the obtained list of parts is available within the ROPE database 40, although the mobile computing device 14 can determine without using the data server 17. By way of example only, the mobile computing device 14 compares the list and quantity of obtained parts against a table (which includes the list and quantities of all parts present within a parts warehouse) present within the ROPE database 40 to determine the availability, although the mobile computing device 14 can determine the availability using other techniques. In step 615, based on the determination, the mobile computing device 14 using the data server 17 sends out a notification to the ROPE database 40 to replenish the required parts. Alternatively, the user of the mobile computing device 14 can manually choose to submit all parts consumed for replenishment or only a subset of those parts, export a list of the remaining parts, or augment the order with other parts using the mobile computing device 14. In yet another alternative approach, a contractor with multiple technicians may elect to aggregate consumed parts on a regular or as-needed basis, and collectively order parts as frequently as desired.
  • Regardless of the approach, the ROPE database 40 then forwards this notification to the distributor device to replenish the parts. This interaction is further explained with reference to FIG. 6B. In step 1, the distributor device 42 uploads the parts data to the ROPE database 40, although the distributor device 42 can upload other types or amounts of information. Next, in step 2, the mobile computing device 14 sends the list of parts required for the repair to the data server 17, although the mobile computing device 14 can send other information present in the work-order to the data server 17. In step 3, the data server 14 sends a list of manufacturer part numbers for the list of parts received from the mobile computing device 14 to the ROPE database 40. Next in step 4, the ROPE database 40 performs a search to determine further details associated with the parts back to the data server 17. In step 5, responsive to receiving the further details associated with the parts, the data server 17 sends a notification to replenish the parts to the ROPE database 40. In step 6, the ROPE database 40 forwards the notification to the distributor device 42 to replenish the parts.
  • Additionally, FIG. 6C illustrates the environment of the mobile computing device 14, data server 17, ROPE database 40 and distributor device 42. In FIG. 6C, A-H are employees associated with a contractor using the mobile computing device 14 and S-Z are location associated with the distributor device 42, although the employees A-H could be associated with multiple contractors and locations S-Z could be associated with multiple distributers. These relations between the employees-contractors and locations-distributors may be established using tags previously illustrated.
  • As illustrated in FIG. 6C, the ROPE database establishes relationships between the mobile computing device 14 (contractors) and the distributor device 42 such that any mobile computing device 14 can order parts from any distributor device 42 for which a relationship has been established in the system. However, there is no limit to the number of mobile computing device 14 and distributor device 42 relationship and they may be established or dissolved at any time. Additionally, in this example, once a relationship between the mobile computing device 14 and the distributor device 14 has been established, a secondary relationship between the employee using the mobile computing device 14 and the distributor location may be established such that a specific employee may order from a specific distributor location.
  • An exemplary method for determining a cost recovery will now be illustrated with reference to FIG. 7. Effectively, the method described below allows a user to recoup a cost associated with generating a work-order from the customer receiving services from the user. In step 705, the mobile computing device 14 obtains the fee associated with each repair of the work-order, although the mobile computing device 14 can also obtain the aggregate fee for all repairs in the work order. Next in step 710, the mobile computing device 14 determines a fee adjustment value for the obtained repair fee. By way of example only, the mobile computing device 14 can determine the fee adjustment value based on a pre-defined fee adjustment value (cost recovery value) stored within the database (not shown), although the mobile computing device 14 can determine the fee adjustment value based on other parameters. This fee adjustment value can be applied once per work-order or, in the instance of complicated work-orders containing many repairs, the fee adjustment value can be applied more than once per work-order, if desired. For example, the fee adjustment value can be applied to the first repair and every other repair, or third or fourth repair, thereafter. Alternatively, in another example, the mobile computing device 14 can determine a fee adjustment value for the total sum of all repairs within the generated work-order based on the pre-defined fee adjustment value. Regardless of the approach used, in step 715 the mobile computing device 14 applies the determined fee adjustment value to the repair fee(s) in the generated work-order.
  • An exemplary method for applying discounts will now be illustrated with reference to FIG. 8A. In step 805, the mobile computing device 14 obtains the total fee present within the generated work-order. In step 810, the mobile computing device 14 determines a discount value (which can be a promotional code, or a coupon value) to be applied to the obtained total fee. In this example, the mobile computing device 14 can determine the discount value based one or more of the tags applied to the user account, a coupon code or a promotional code received from a user via the input device 22A, a pre-defined discount value based on the total fee in the invoice, or a pre-defined discount value based on the total number of repairs within the invoice, although the mobile computing device 14 can determined the discount value based on other parameters (e.g., discount associated with a maintenance agreement or manufacturer rebate passed along to customer). Next, in step 815, the mobile computing device 14 applies the determined discount value to the total fee in the generated work-order.
  • In another exemplary method, illustrated in FIG. 8B, the mobile computing device 14 can obtain fees associated with one or more selected repairs within the generated work-order, and apply any discount selectively to the one or more repairs. For example, in step 825, the mobile computing device 14 obtains the fee amount per selected repair in the generated work order. In step 830, the mobile computing device 14 determines a discount value (which can be a promotional code, or a coupon value, as described above) to be applied to the obtained fee, which has been selected by a user. Next, in step 835, the mobile computing device 14 applies the determined discount value to the selected repair fee in the generated work-order, and the total sum of all repair fees can be generated for the whole work-order.
  • Now with reference to FIG. 2A, in step 240 the mobile computing device 14 provides the generated work-order to fit within the display device 22B using techniques which will now be illustrated, although the mobile computing device 14 can provide the generated work-order using any other methods or techniques. The mobile computing device 14 divides the display device 22B into two types of pages a navigation page and a content page. When on a navigation page, the mobile computing device 14 displays a list of items. Upon receiving a selection of the listed items, the mobile computing device 14 loads another navigation page or a content page. Additionally, if the display device 22B of the mobile computing device 14 is wide enough, the navigation page will show a summary/placeholder page to the right of the navigation pane as illustrated in FIG. 9.
  • However, on a content page, the navigation will not be shown—unless the browser is wide enough to accommodate both navigation and content—and a “back” button will be provided by the mobile computing device 14. The back button provided by the mobile computing device 14 would assist with moving back to the previous navigation page. This illustrated technique, provides advantages of changing the user interface on the display device to adjust based on the width of the browser viewport, which is independent of the mobile computing device 14. Additionally, the illustrated technique can adjust the presence of the navigation in response to resizing of the browser window and orientation changes of mobile computing devices. Furthermore, the illustrated technique can be implemented on any device and the technique does not rely on detecting device's make or model.
  • In step 245, the mobile computing device 14 determines if any changes are necessary to the provided work-order based on inputs received at the input device 22A of the mobile computing device, although the mobile computing device can determine necessary changes using any other methods or techniques. In this example, the mobile computing device 14 can receive any necessary changes or confirmation via the input device 22A to the provided generated work-order. If the mobile computing device 14 determines any changes are needed for the provided work-order, a Yes branch is taken to step 250 to obtain the changes to the work order and then to generate a revised work-order.
  • However, if the mobile computing device 14 determines that no further changes are required, a No branch is taken to step 255 where the invoice for the work order is generated by the mobile computing device 14 based on the total fee present within the generated work-order. In this example, the mobile computing device 14 can receive a signature on the work-order via the input device 22A confirming the details of the work-order.
  • In step 260, the mobile computing device 14 determines if a fee set forth in the invoice has been paid. If the mobile computing device 14 determines that the fee in the invoice has been paid, a Yes branch is taken to step 270 to update the generated invoice and the work-order in the database. However, if the mobile computing device 14 determines that the fee set forth in claim invoice has not been paid, a No branch is taken to step 265 where the mobile computing device 14 can either wait until the fee has been paid and then proceed to update the work-order and invoice. Alternatively, the mobile computing device 14 can wait until a certain period of time, by way of example only 30 days, after which the mobile computing device 14 can automatically update the work-order and the invoice to the database and store or archive the work-order and the invoice.
  • In step 270, while updating the work-order and the invoice to the database in the server, the mobile computing device 14 first checks whether there is a network connection between the mobile computing device 14 and the server 16. If the mobile computing device determines that there is a network connection (online) between the mobile computing device 14 and the server 16, a Yes branch is taken to step 280 where the mobile computing device 14 directly uploads or stores the work-order and the invoice to the databases present in the server 16, although the mobile computing device 14 can save the work-order locally within the memory 20 and then uploaded to database present in the server 16. However, if the mobile computing device 14 determines that there is no connection (offline) between the mobile computing device 14 and the server 16, a No branch is taken to step 275 where the mobile computing device 14 uploads or stores the work-order in the previously obtained database from the server 16 (which is stored within the memory of the mobile computing device), and once the network connection is established between the mobile computing device 14 and the server 16, the mobile computing device 14 proceeds to update the database present in the server 16, with the one present within the memory 20 of the mobile computing device 14. Additionally, the mobile computing device 14 can automatically receives notification from the server 16 where there are any updates determined by the server 16.
  • In step 285, the mobile computing device 14 closes the work-order and the exemplary process ends.
  • Additionally, the mobile computing device 14 may provide rewards upon successful completion of work-orders and/or closing of work-orders upon receipt of payment. By way of example only, the mobile computing device 14 can add the amount present in the invoice to the account associated with the user of the mobile computing device 14, and reward the user by notifying the user of the number of completed work-orders over a period of time, the percentage of completed work-orders that are closed with payment of the invoice, the aggregate sum of invoices over a period of time, whether the user is in, e.g., the top 25% percent of technicians employed by a particular contractor, etc. The mobile computing device 14 can provide notification (triggers) via text message, email or on the display device 22B indicating the rewards supplied to the user.
  • A further aspect of the invention includes the ability to synchronize the completed invoice data or completed but unpaid work-order data or customer data from the inventive device and method to accounting software such as QuickBooks™ and back from the accounting software such as QuickBooks™ to the inventive device. This can be achieved using tagged database records, and synchronization of the tagged records. An exemplary method for data synchronizing is illustrated in FIG. 12.
  • Having thus described the basic concept of the invention, it will be rather apparent to those skilled in the art that the foregoing detailed disclosure is intended to be presented by way of example only, and is not limiting. Various alterations, improvements, and modifications will occur and are intended to those skilled in the art, though not expressly stated herein. These alterations, improvements, and modifications are intended to be suggested hereby, and are within the spirit and scope of the invention. Additionally, the recited order of processing elements or sequences, or the use of numbers, letters, or other designations therefore, is not intended to limit the claimed processes to any order except as may be specified in the claims. Accordingly, the invention is limited only by the following claims and equivalents thereto.

Claims (30)

What is claimed is:
1. A method for generating a work-order in real time, the method comprising:
obtaining by a mobile computing device one or more databases from one or more sources;
identifying by the mobile computing device one or more items in the obtained one or more databases;
determining by the mobile computing device a fee for the identified one or more items based on one or more fee setting parameters; and
generating by the mobile computing device a work-order in real-time based on the determined fee.
2. The method as set forth in claim 1 further comprising generating by the mobile computing device an invoice associated with the generated work-order.
3. The method as set forth in claim 1 further comprising:
receiving by the mobile computing device one or more changes to the generated work-order;
generating by the mobile computing device a revised work-order based on the received one or more changes; and
generating by the mobile computing device a revised invoice associated with the generated revised work-order.
4. The method as set forth in claim 1 wherein the identifying the one or more items further comprises:
searching by the mobile computing device the one or more items in the obtained one or more databases, wherein the searching further comprises:
receiving by the mobile computing device one or more search terms;
providing by the mobile computing device one or more suggestions associated with the one or more search terms;
receiving by the mobile computing device a selection of the one or more suggestions; and
searching by the mobile computing device the one or more items using the received selection of the one or more suggestions.
5. The method as set forth in claim 2 further comprising:
determining by mobile computing device whether an amount equal to the determined fee for the generated invoice has been paid;
updating by the mobile computing device the generated work-order in a work-order database when the amount equal to the determined fee has been paid; and
closing by the mobile computing device the generated work-order upon updating the generated work-order in the work-order database.
6. The method as set forth in claim 1 wherein the determining the fee further comprises determining by the mobile computing device the determined fee based on one or more of an item markup percentage, a local sales tax or one or more rates.
7. The method as set forth in claim 6, wherein the item markup percentage is calculated according to a formula:

I+(E−I)+((C−L)/(H−L))1/S×((C−L)/(H−L)) 1/v
wherein, I is a markup for inexpensive parts, E is a markup for expensive parts, C is a cost of the part, L is a minimum part cost, H is a maximum part cost, S is a maximum smoothing and V is a curve variation.
8. The method as set forth in claim 5 wherein the updating further comprises:
determining by the mobile computing device presence of a network connection between the mobile computing device and a data server comprising the work-order database and an invoice database; and
updating by the mobile computing device the generated invoice to the invoice database and the generated work-order to the work-order database when the network connection is determined to be present.
9. The method as set forth in claim 8 wherein the determining further comprises:
establishing by the mobile computing device the network connection with the data server comprising the work-order database and the invoice database when the network connection is determined not to be present; and
wherein the updating is upon establishing the network connection.
10. The method as set forth in claim 1 wherein the obtaining the one or more databases further comprises:
partitioning the one or more databases into two or more data files by a server;
generating by server a manifest for the two or more data files;
accessing by the mobile computing device the manifest and the two or more data files; and
assembling by the mobile computing device the one or more databases using the accessed manifest and the two or more data files.
11. A non-transitory computer readable medium having stored thereon instructions for generating a work-order in real time comprising machine executable code which when executed by at least one processor, causes the processor to perform steps comprising:
obtaining by a mobile computing device one or more databases from one or more sources;
identifying by the mobile computing device one or more items in the obtained one or more databases;
determining by the mobile computing device a fee for the identified one or more items based on one or more fee setting parameters; and
generating by the mobile computing device a work-order in real-time based on the determined fee.
12. The medium as set forth in claim 11 further comprising generating an invoice associated with the generated work-order.
13. The medium as set forth in claim 11 further comprising:
receiving one or more changes to the generated work-order;
generating a revised work-order based on the received one or more changes; and
generating a revised invoice associated with the generated revised work-order.
14. The medium as set forth in claim 11 wherein the identifying the one or more items further comprises:
searching the one or more items in the obtained one or more databases, wherein the searching further comprises:
receiving one or more search terms;
providing one or more suggestions associated with the one or more search terms;
receiving a selection of the one or more suggestions; and
searching the one or more items using the received selection of the one or more suggestions.
15. The medium as set forth in claim 12 further comprising:
determining whether an amount equal to the determined fee for the generated invoice has been paid;
updating the generated work-order in a work-order database when the amount equal to the determined fee has been paid; and
closing the generated work-order upon updating the generated work-order in the work-order database.
16. The medium as set forth in claim 11 wherein the determining the fee further comprises determining the fee based on one or more of an item markup percentage, a local sales tax or one or more rates.
17. The medium as set forth in claim 16, wherein the item markup percentage is calculated according to a formula:

I+(E−I)+((C−L)/(H−L))1/S×((C−L)/(H−L)) 1/v
wherein, I is a markup for inexpensive parts, E is a markup for expensive parts, C is a cost of the part, L is a minimum part cost, H is a maximum part cost, S is a maximum smoothing and V is a curve variation.
18. The medium as set forth in claim 15 wherein the updating further comprises:
determining presence of a network connection between the mobile computing device and a data server comprising the work-order database and an invoice database; and
updating the generated invoice to the invoice database and the generated work-order to the work-order database when the network connection is determined to be present.
19. The medium as set forth in claim 18 wherein the determining further comprises:
establishing the network connection with the data server comprising the work-order database and the invoice database when the network connection is determined not to be present; and
wherein the updating is upon establishing the network connection.
20. The medium as set forth in claim 11 wherein the obtaining the one or more databases further comprises:
partitioning the one or more databases into two or more data files by a server;
generating a manifest for the two or more data files;
accessing the manifest and the two or more data files; and
assembling the one or more databases using the accessed manifest and the two or more data files.
21. A mobile computing device comprising:
one or more processors;
a memory, wherein the memory coupled to the one or more processors which are configured to execute programmed instructions stored in the memory comprising:
obtaining by a mobile computing device one or more databases from one or more sources;
identifying by the mobile computing device one or more items in the obtained one or more databases;
determining by the mobile computing device a fee for the identified one or more items based on one or more fee setting parameters; and
generating by the mobile computing device a work-order in real-time based on the determined fee.
22. The device as set forth in claim 21 wherein the one or more processors is further configured to execute programmed instructions stored in the memory further comprising generating an invoice associated with the generated work-order.
23. The device as set forth in claim 21 wherein the one or more processors is further configured to execute programmed instructions stored in the memory further comprising:
receiving one or more changes to the generated work-order;
generating a revised work-order based on the received one or more changes; and
generating a revised invoice associated with the generated revised work-order.
24. The device as set forth in claim 21 wherein the one or more processors is further configured to execute programmed instructions stored in the memory wherein the identifying the one or more items further comprises:
searching the one or more items in the obtained one or more databases, wherein the searching further comprises:
receiving one or more search terms;
providing one or more suggestions associated with the one or more search terms;
receiving a selection of the one or more suggestions; and
searching the one or more items using the received selection of the one or more suggestions.
25. The device as set forth in claim 22 wherein the one or more processors is further configured to execute programmed instructions stored in the memory further comprising:
determining whether an amount equal to the determined fee present for the generated invoice has been paid;
updating the generated work-order in a work-order database when the amount equal to the determined fee has been paid; and
closing the generated work-order upon updating the generated work-order in the work-order database.
26. The device as set forth in claim 21 wherein the one or more processors is further configured to execute programmed instructions stored in the memory for the determining the fee further comprises determining the fee based on one or more of an item markup percentage, a local sales tax or one or more rates.
27. The device as set forth in claim 26 wherein the item markup percentage is calculated according to a formula:

I+(E−I)+((C−L)/(H−L))1/S×((C−L)/(H−L)) 1/v
wherein, I is a markup for inexpensive parts, E is a markup for expensive parts, C is a cost of the part, L is a minimum part cost, H is a maximum part cost, S is a maximum smoothing and V is a curve variation.
28. The device as set forth in claim 26 wherein the one or more processors is further configured to execute programmed instructions stored in the memory for the updating further comprises:
determining presence of a network connection between the mobile computing device and a data server comprising the work-order database and an invoice database; and
updating the generated invoice to the invoice database and the generated work-order to the work-order database when the network connection is determined to be present.
29. The device as set forth in claim 28 wherein the one or more processors is further configured to execute programmed instructions stored in the memory for the determining further comprises:
establishing the network connection with the data server comprising the work-order database and the invoice database when the network connection is determined not to be present; and
wherein the updating is upon establishing the network connection.
30. The device as set forth in claim 21 wherein the one or more processors is further configured to execute programmed instructions stored in the memory for the obtaining the one or more databases further comprises:
partitioning the one or more databases into two or more data files by a server;
generating a manifest for the two or more data files;
accessing the manifest and the two or more data files; and
assembling the one or more databases using the accessed manifest and the two or more data files.
US14/030,864 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof Abandoned US20140278660A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/030,864 US20140278660A1 (en) 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201361798637P 2013-03-15 2013-03-15
US14/030,864 US20140278660A1 (en) 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof

Publications (1)

Publication Number Publication Date
US20140278660A1 true US20140278660A1 (en) 2014-09-18

Family

ID=51531988

Family Applications (3)

Application Number Title Priority Date Filing Date
US14/030,887 Expired - Fee Related US9727832B2 (en) 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof
US14/030,864 Abandoned US20140278660A1 (en) 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof
US15/667,163 Abandoned US20170330141A1 (en) 2013-03-15 2017-08-02 Methods for generating a work-order in real time and devices thereof

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/030,887 Expired - Fee Related US9727832B2 (en) 2013-03-15 2013-09-18 Methods for generating a work-order in real time and devices thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/667,163 Abandoned US20170330141A1 (en) 2013-03-15 2017-08-02 Methods for generating a work-order in real time and devices thereof

Country Status (5)

Country Link
US (3) US9727832B2 (en)
EP (1) EP3047432A4 (en)
AU (1) AU2014323544A1 (en)
CA (1) CA2924884A1 (en)
WO (1) WO2015042267A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016081565A1 (en) * 2014-11-20 2016-05-26 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US20160307247A1 (en) * 2015-04-15 2016-10-20 Top Brands Tire & Wheel dba Auto Repair Co. Auto repair quote platform
US20170109767A1 (en) * 2014-06-12 2017-04-20 Arie Shpanya Real-time dynamic pricing system
US11062275B2 (en) * 2016-06-02 2021-07-13 Top Brands Tire & Wheel Auto repair quote platform

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2997407A1 (en) * 2015-09-04 2017-03-09 Werklund Ventures Ltd. Electronic communications and data storage systems and processes for industrial projects

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050131596A1 (en) * 1995-01-12 2005-06-16 Automated Vehicle Analysis, Inc. Integrated automated analysis and repair
US20060155790A1 (en) * 2005-01-11 2006-07-13 Samsung Electronics Co., Ltd. Manifest file structure, method of downloading contents usng the same, and apparatus for reproducing the contents
US20060259479A1 (en) * 2005-05-12 2006-11-16 Microsoft Corporation System and method for automatic generation of suggested inline search terms
US20070083574A1 (en) * 2005-10-07 2007-04-12 Oracle International Corporation Replica database maintenance with parallel log file transfers
US20070185776A1 (en) * 2003-06-24 2007-08-09 Nextchoice, Inc. System and method for presenting consumer purchasing opportunities through multiple communication and display mediums
US20070185775A1 (en) * 2006-02-07 2007-08-09 Lawton Daniel J Method and system for facilitating a purchase process
US20070189718A1 (en) * 2005-03-18 2007-08-16 Sony Corporation Reproduction device and reproduction method, program and program storage medium, data distribution system, data structure, and method for manufacturing recording medium
US20070265934A1 (en) * 2005-08-11 2007-11-15 Sitoa Corporation Method in support of pre-commerce decision making and automated product listing generation
US20090049057A1 (en) * 2006-01-19 2009-02-19 Rod Ghani Method and device for providing location based content delivery
US20100058061A1 (en) * 2008-08-29 2010-03-04 Microsoft Corporation Controlling access to data streams
US20110022503A1 (en) * 2008-01-18 2011-01-27 Rodney Parker-Yules Mobile business system
US20110040642A1 (en) * 2009-08-11 2011-02-17 O'dell Michael Method for aggregated location-based services
US20120109372A1 (en) * 2010-10-28 2012-05-03 Ncr Corporation Distributed item dispenser management
US20120226776A1 (en) * 2011-03-04 2012-09-06 Scribble Technologies Inc. System and Methods for Facilitating the Synchronization of Data
US20120233228A1 (en) * 2011-03-08 2012-09-13 Rackspace Us, Inc. Appending to files via server-side chunking and manifest manipulation
US20140244692A1 (en) * 2013-02-27 2014-08-28 Cellco Partnership D/B/A Verizon Wireless Converting xml to json with configurable output

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337246A (en) * 1992-05-22 1994-08-09 Pitney Bowes Inc. Flexible apparatus and method for applying customized rating adjustments to transaction charges
US5918219A (en) * 1994-12-14 1999-06-29 Isherwood; John Philip System and method for estimating construction project costs and schedules based on historical data
AU6780798A (en) * 1997-03-31 1998-10-22 Bellsouth Intellectual Property Corporation A system and method for generating an invoice to rebill charges to the elements of an organization
US7117162B1 (en) * 1997-09-11 2006-10-03 Bellsouth Intellectual Property Corp. System and Method for Facilitating Managing a Job
US7236950B2 (en) * 1998-10-29 2007-06-26 Universal Card Services Corp. Method and system of combined billing of multiple accounts on a single statement
US6581204B2 (en) * 1999-08-24 2003-06-17 Ge Medical Systems Information Technologies, Inc. Modular tracking and profiling system
US20010047287A1 (en) 2000-03-31 2001-11-29 Simon Jacobs Finding technique for a scheduling system
US20020032613A1 (en) * 2000-04-18 2002-03-14 Buettgenbach Thomas H. Methods and systems for the physical delivery of goods ordered through an electronic network
US7139564B2 (en) 2000-08-08 2006-11-21 Hebert Thomas H Wireless communication device for field personnel
US7593751B2 (en) 2000-09-18 2009-09-22 Field Data Management Solutions, Llc Conducting field operations using handheld data management devices
US6975990B2 (en) 2001-01-03 2005-12-13 Mudakara Global Solutions Sequential-data synchronization at real-time on an analog and a digital medium
US7720714B2 (en) * 2001-01-19 2010-05-18 Globalserve Computer Services, Ltd. System and method for facilitating electronic procurement based on negotiated contracts
US7313534B2 (en) * 2001-01-22 2007-12-25 W.W. Grainger, Inc. System and method for predictive maintenance and service parts fulfillment in a supply chain
US20020143655A1 (en) 2001-04-02 2002-10-03 Stephen Elston Remote ordering system for mobile commerce
US20020156692A1 (en) * 2001-04-20 2002-10-24 Squeglia Mark R. Method and system for managing supply of replacement parts of a piece of equipment
US20030069648A1 (en) * 2001-09-10 2003-04-10 Barry Douglas System and method for monitoring and managing equipment
US20030069845A1 (en) 2001-10-09 2003-04-10 Dewitt Richard R. Method and system for tracking and verifying billing exceptions
US8935297B2 (en) * 2001-12-10 2015-01-13 Patrick J. Coyne Method and system for the management of professional services project information
US6922687B2 (en) * 2001-12-21 2005-07-26 Barca, L.L.C. Closed loop asset management process
US20030130820A1 (en) * 2002-01-07 2003-07-10 Lane George H. Work order system
CA2371985C (en) * 2002-02-15 2015-12-29 Teranet Enterprises Inc. Method and system for constructing price structures of complex products and services
US7209859B2 (en) * 2002-03-02 2007-04-24 Linxberg Technology, Llc Method and apparatus for sequentially collecting and analyzing real time data with interactive monitoring
US20030212589A1 (en) * 2002-05-13 2003-11-13 Kish William Elmer Enhancement incentive system using transaction events for user rewards, for workforce productivity on a distributed network
US20040098279A1 (en) * 2002-11-20 2004-05-20 Frazier John B. System of home certification and warranty
US8069113B2 (en) * 2003-12-17 2011-11-29 Fmr Llc Financial account management
US20090125454A1 (en) * 2004-05-11 2009-05-14 Daniel Wartel Software for automatically providing quotes
US7685076B2 (en) 2005-01-13 2010-03-23 First Service Networks, Inc. Online reduction in repair and maintenance costs
US7478085B2 (en) * 2005-04-01 2009-01-13 Microsoft Corporation Ability for developers to easily find or extend well known locations on a system
US20070136106A1 (en) * 2005-12-09 2007-06-14 Gary Hart Method and system of managing and administering automotive glass repairs and replacements
US20070168344A1 (en) * 2006-01-19 2007-07-19 Brinson Robert M Jr Data product search using related concepts
US7664530B2 (en) * 2006-06-09 2010-02-16 AT&I Intellectual Property I, L.P Method and system for automated planning using geographical data
US7596620B1 (en) * 2008-11-04 2009-09-29 Aptana, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
US8631161B2 (en) * 2008-09-30 2014-01-14 Andrei B. Lavrov Computer program product, system and method for field management and mobile inspection
US20120101881A1 (en) * 2008-11-25 2012-04-26 Mary Theresa Taylor Loyalty promotion apparatuses, methods and systems
US20100191611A1 (en) 2009-01-27 2010-07-29 Janos Biro Portable electronic construction estimator
US20100198651A1 (en) * 2009-01-31 2010-08-05 Stephen Michael Johnson Integrated infrastructure operations management system and method
US8467768B2 (en) * 2009-02-17 2013-06-18 Lookout, Inc. System and method for remotely securing or recovering a mobile device
CA2667036A1 (en) * 2009-05-27 2010-11-27 Clevest Solutions Inc. A system and method for workflow management with configurable states and extensibility
US9378511B2 (en) 2009-07-15 2016-06-28 International Business Machines Corporation Real-time appointment of enterprise mobile agents in response to customer requests
US20110054978A1 (en) 2009-09-03 2011-03-03 Rakshat Singh Mohil Method and system for providing marketplace calendaring
US9064219B2 (en) * 2010-05-05 2015-06-23 J. E. Dunn Construction Group, Inc. System and method for managing facility content and equipment information
US20120116936A1 (en) * 2010-11-08 2012-05-10 Bank Of America Corporation Integrated facility managment system
US20120232969A1 (en) * 2010-12-31 2012-09-13 Nest Labs, Inc. Systems and methods for updating climate control algorithms
US20140025747A1 (en) * 2011-04-01 2014-01-23 San Diego State University Research Foundation Electronic devices, systems and methods for data exchange
US20120284077A1 (en) 2011-05-06 2012-11-08 GM Global Technology Operations LLC Automated work order generation for maintenance
WO2012162736A1 (en) 2011-06-03 2012-12-06 Yarris Pty Ltd Construction management system and method
US20120328162A1 (en) * 2011-06-22 2012-12-27 Certusview Technologies, Llc Methods, apparatus, and systems for performing installations of engineered systems and generating site visit manifests for same
US20140172479A1 (en) * 2012-12-14 2014-06-19 Lisa A. Gallagher Integrated Customer Profiling, Service Provider Matching and Smart Order, Creation System and Method
US20140172537A1 (en) * 2012-12-17 2014-06-19 Bank Of America Corporation Transaction cost recovery discount offering
US20150073823A1 (en) * 2013-09-09 2015-03-12 Primacea, Inc. Real-time compliance system
US10340038B2 (en) * 2014-05-13 2019-07-02 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain, systems and methods

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050131596A1 (en) * 1995-01-12 2005-06-16 Automated Vehicle Analysis, Inc. Integrated automated analysis and repair
US20070185776A1 (en) * 2003-06-24 2007-08-09 Nextchoice, Inc. System and method for presenting consumer purchasing opportunities through multiple communication and display mediums
US20060155790A1 (en) * 2005-01-11 2006-07-13 Samsung Electronics Co., Ltd. Manifest file structure, method of downloading contents usng the same, and apparatus for reproducing the contents
US20070189718A1 (en) * 2005-03-18 2007-08-16 Sony Corporation Reproduction device and reproduction method, program and program storage medium, data distribution system, data structure, and method for manufacturing recording medium
US20060259479A1 (en) * 2005-05-12 2006-11-16 Microsoft Corporation System and method for automatic generation of suggested inline search terms
US20070265934A1 (en) * 2005-08-11 2007-11-15 Sitoa Corporation Method in support of pre-commerce decision making and automated product listing generation
US20070083574A1 (en) * 2005-10-07 2007-04-12 Oracle International Corporation Replica database maintenance with parallel log file transfers
US20090049057A1 (en) * 2006-01-19 2009-02-19 Rod Ghani Method and device for providing location based content delivery
US20070185775A1 (en) * 2006-02-07 2007-08-09 Lawton Daniel J Method and system for facilitating a purchase process
US20110022503A1 (en) * 2008-01-18 2011-01-27 Rodney Parker-Yules Mobile business system
US20100058061A1 (en) * 2008-08-29 2010-03-04 Microsoft Corporation Controlling access to data streams
US20110040642A1 (en) * 2009-08-11 2011-02-17 O'dell Michael Method for aggregated location-based services
US20120109372A1 (en) * 2010-10-28 2012-05-03 Ncr Corporation Distributed item dispenser management
US20120226776A1 (en) * 2011-03-04 2012-09-06 Scribble Technologies Inc. System and Methods for Facilitating the Synchronization of Data
US20120233228A1 (en) * 2011-03-08 2012-09-13 Rackspace Us, Inc. Appending to files via server-side chunking and manifest manipulation
US20140244692A1 (en) * 2013-02-27 2014-08-28 Cellco Partnership D/B/A Verizon Wireless Converting xml to json with configurable output

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170109767A1 (en) * 2014-06-12 2017-04-20 Arie Shpanya Real-time dynamic pricing system
WO2016081565A1 (en) * 2014-11-20 2016-05-26 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US20160150045A1 (en) * 2014-11-20 2016-05-26 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US9813518B2 (en) * 2014-11-20 2017-11-07 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US10785338B2 (en) 2014-11-20 2020-09-22 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US11323533B2 (en) 2014-11-20 2022-05-03 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US11811893B2 (en) 2014-11-20 2023-11-07 Trading Technologies International, Inc. Merging data downloads with real-time data feeds
US20160307247A1 (en) * 2015-04-15 2016-10-20 Top Brands Tire & Wheel dba Auto Repair Co. Auto repair quote platform
US10217150B2 (en) * 2015-04-15 2019-02-26 Top Brands Tire & Wheel Auto repair quote platform
US10460369B2 (en) * 2015-04-15 2019-10-29 Top Brands Tire & Wheel Auto repair quote platform
US10559017B2 (en) * 2015-04-15 2020-02-11 Top Brands Tire & Wheel Auto repair quote platform
US11062275B2 (en) * 2016-06-02 2021-07-13 Top Brands Tire & Wheel Auto repair quote platform

Also Published As

Publication number Publication date
AU2014323544A1 (en) 2016-05-12
EP3047432A4 (en) 2017-03-29
US9727832B2 (en) 2017-08-08
WO2015042267A1 (en) 2015-03-26
EP3047432A1 (en) 2016-07-27
US20140278628A1 (en) 2014-09-18
CA2924884A1 (en) 2015-03-26
US20170330141A1 (en) 2017-11-16

Similar Documents

Publication Publication Date Title
US20170330141A1 (en) Methods for generating a work-order in real time and devices thereof
US10796337B2 (en) Realtime feedback using affinity-based dynamic user clustering
US9558515B2 (en) Recommending food items based on personal information and nutritional content
CN107767164B (en) Information processing method, distribution method and device for push information order
US20130246212A1 (en) System and method for providing mobile device trade-in value quotations and comparisons against other mobile devices
JP6513861B1 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM
CN104217355A (en) Method and device for predicting sales volume of promotion items
US9703793B1 (en) Data aggregation and caching
WO2012125591A1 (en) Dynamic data transaction processing using gating criteria
JP7002311B2 (en) Information processing equipment, information processing methods, and programs
US10102551B2 (en) Methods and systems to provide price matching offers to potential customers
KR102225903B1 (en) Welfare type discount mall system and operating method thereof
US20160117703A1 (en) Large-Scale Customer-Product Relationship Mapping and Contact Scheduling
US20160034928A1 (en) Systems and methods for promotional forecasting
US20140129326A1 (en) Method and apparatus for advertising using social media
CN102498498A (en) Expressive bidding in online advertising auctions
WO2024061182A1 (en) Information display method, information processing method, device, and system
US10672087B1 (en) Order volume management system
CN109190982A (en) Enterprise operation health degree acquisition methods, device, computer installation and storage medium
US20160189188A1 (en) Dynamic pricing based on transaction models
CA2909957A1 (en) Large-scale customer-product relationship mapping and contact scheduling
JP7189067B2 (en) Information processing device, information processing method and information processing program
KR102576123B1 (en) Product marketing linkage system and method
US11017369B1 (en) Cloud-based inventory and discount pricing management system
KR20140015736A (en) Method and apparatus for providing individual size in a online shopping mall

Legal Events

Date Code Title Description
AS Assignment

Owner name: PROFIT STRATEGIES, INC., NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:D'AMICO, JAMES W.;BACCARO, PAUL M.;SMITH, MATTHEW;REEL/FRAME:031583/0059

Effective date: 20131023

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

AS Assignment

Owner name: DESCO, LLC, FLORIDA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROFIT STRATEGIES, INC.;REEL/FRAME:048220/0235

Effective date: 20190131

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION