AU2014100538A4 - Method and system for locating stock items - Google Patents
Method and system for locating stock items Download PDFInfo
- Publication number
- AU2014100538A4 AU2014100538A4 AU2014100538A AU2014100538A AU2014100538A4 AU 2014100538 A4 AU2014100538 A4 AU 2014100538A4 AU 2014100538 A AU2014100538 A AU 2014100538A AU 2014100538 A AU2014100538 A AU 2014100538A AU 2014100538 A4 AU2014100538 A4 AU 2014100538A4
- Authority
- AU
- Australia
- Prior art keywords
- stock
- data
- sets
- location
- item
- 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.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000004891 communication Methods 0.000 claims description 18
- 238000011156 evaluation Methods 0.000 claims description 18
- 230000002776 aggregation Effects 0.000 claims description 4
- 238000004220 aggregation Methods 0.000 claims description 4
- 230000015654 memory Effects 0.000 description 57
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000013500 data storage Methods 0.000 description 9
- 238000012546 transfer Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000009428 plumbing Methods 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
Abstract METHOD AND SYSTEM FOR LOCATING STOCK ITEMS A computer implemented method of locating at least one stock item, the method comprising the steps of: receiving a plurality of sets of stock data associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database (301A, 301B, 301C, 301D); creating an aggregated set of stock data 190 from the plurality of sets of stock data; receiving stock item identification data and preferred stock location data 313; identifying one or more locations of at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and outputting the one or more locations of the at least one stock item. Independent Independent Database Database Receiving a plurality S401 of sets of stock data Creating an aggregated S403 set of stock data Receiving stock item i S405 identification data Receiving preferred stock location data S407 Identifying one or more locations of stock item(s) S409 Outputting location(s) of stock item(s) Fig. 4
Description
1 METHOD AND SYSTEM FOR LOCATING STOCK ITEMS Technical Field [0001] The present invention relates generally to a method and system for locating stock items. Background [0002] When carrying out repairs or building work, either personally or through the hiring of a relevant tradesperson, it is sometimes necessary to locate a specific component for use in that work. For example, when carrying out plumbing work, it may be necessary to find a suitable fitting for connection to an existing portion of pipework. In other industries, a similar problem may exist where specific components are required for a specific task. [0003] Various handbooks are available, which provide details and specifications for different types of components that may be used during the reparation or building work. The tradesperson may use this information to locate a component that is suitable for the task at hand. For example, "The Plumbers Handbook" produced by the Copper Development Centre Australia, provides details and specifications for different tubes, pipes, joints, fittings and other components in the plumbing industry. [0004] Once a component has been selected for use, the tradesperson is required to locate a store that sells the relevant component. This is usually carried out by the tradesperson accessing a supplier's general website and searching for the component to see if it is an available stock item supplied by that supplier. The tradesperson then usually has to contact an outlet or store of that supplier that is local to the tradesperson to ascertain whether that particular stock item is actually in stock at the local store or outlet. If the item isn't available, the tradesperson is then required to call around other nearby stores of the supplier to try and locate the stock item. The tradesperson may also contact other suppliers individually, but is then required to try and locate the relevant component in a similar manner. Summary [0005] According to a first aspect of the present invention, there is provided a computer implemented method of locating at least one stock item, the method comprising the steps of: receiving a plurality of sets of stock data associated with a plurality of stock items, where each 2 set of at least two sets of the plurality of sets of stock data is associated with a separate independent database; creating an aggregated set of stock data from the plurality of sets of stock data; receiving stock item identification data and preferred stock location data; identifying one or more locations of at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and outputting the one or more locations of the at least one stock item. [0006] According to a second aspect of the present invention, there is provided a system for locating at least one stock item, the system comprising: a data retrieval and aggregation module adapted to receive a plurality of sets of stock data associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database, and create an aggregated set of stock data from the plurality of sets of stock data; a location and stock evaluation module adapted to receive stock item identification data and preferred stock location data, identify one or more locations of at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and output the one or more locations of the at least one stock item. [0007] According to a third aspect of the present invention, there is provided a computer or electronic device implemented method of locating at least one stock item, the method comprising the steps of: obtaining stock item identification data and preferred stock location data; sending the obtained stock item identification data and preferred stock location data to a location and stock evaluation module, receiving one or more locations of the at least one stock item, where the one or more locations are identified from an aggregated set of stock data based on the sent stock item identification data and preferred stock location data, wherein the aggregated set of stock data is created from a plurality of sets of stock data which are associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database, and outputting the received one or more locations. [0008] According to a fourth aspect of the present invention, there is provided a computer or electronic device for locating at least one stock item, the computer or electronic device comprising: a data input module adapted to obtain stock item identification data and preferred stock location data; a communication module adapted to send the obtained stock item identification data and preferred stock location data to a location and stock evaluation module, and receive one or more locations of the at least one stock item, where the one or more locations are identified from an aggregated set of stock data based on the sent stock item 3 identification data and preferred stock location data, wherein the aggregated set of stock data is created from a plurality of sets of stock data which are associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database; and an output module adapted to output the received one or more locations. [0009] Other aspects of the invention are also disclosed. Brief Description of the Drawings [0010] At least one embodiment of the present invention will now be described with reference to the drawings and appendices, in which: [0011] Figs. 1A and 1 B show a schematic block diagram of a computer system upon which arrangements described can be practiced; [0012] Figs. 2A and 2B show a schematic block diagram of an electronic device upon which arrangements described can be practiced; [0013] Fig. 3 shows a general system diagram according to an embodiment of the present invention; [0014] Fig. 4 shows a flow diagram of a process implemented on a computing system according to an embodiment of the present invention; [0015] Fig. 5 shows a flow diagram of a process implemented on an electronic device according to an embodiment of the present invention; [0016] Fig. 6 shows a flow diagram of a process implemented on an electronic device according to an embodiment of the present invention; Detailed Description including Best Mode [0017] Where reference is made in any one or more of the accompanying drawings to steps and/or features, which have the same reference numerals, those steps and/or features have for the purposes of this description the same function(s) or operation(s), unless the contrary intention appears.
4 [0018] Figs. 1A and 1B depict a general-purpose computer system 100, upon which the various arrangements described can be practiced. [0019] As seen in Fig. 1A, the computer system 100 includes: a computer module 101; input devices such as a keyboard 102, a mouse pointer device 103, a scanner 126, a camera 127, and a microphone 180; and output devices including a printer 115, a display device 114 and loudspeakers 117. An external Modulator-Demodulator (Modem) transceiver device 116 may be used by the computer module 101 for communicating to and from a communications network 120 via a connection 121. The communications network 120 may be a wide-area network (WAN), such as the Internet, a cellular telecommunications network, or a private WAN. Where the connection 121 is a telephone line, the modem 116 may be a traditional "dial-up" modem. Alternatively, where the connection 121 is a high capacity (e.g., cable) connection, the modem 116 may be a broadband modem. A wireless modem may also be used for wireless connection to the communications network 120. [0020] The computer module 101 typically includes at least one processor unit 105, and a memory unit 106. For example, the memory unit 106 may have semiconductor random access memory (RAM) and semiconductor read only memory (ROM). The computer module 101 also includes an number of input/output (1/O) interfaces including: an audio-video interface 107 that couples to the video display 114, loudspeakers 117 and microphone 180; an 1/O interface 113 that couples to the keyboard 102, mouse 103, scanner 126, camera 127 and optionally a joystick or other human interface device (not illustrated); and an interface 108 for the external modem 116 and printer 115. In some implementations, the modem 116 may be incorporated within the computer module 101, for example within the interface 108. The computer module 101 also has a local network interface 111, which permits coupling of the computer system 100 via a connection 123 to a local-area communications network 122, known as a Local Area Network (LAN). As illustrated in Fig. 1A, the local communications network 122 may also couple to the wide network 120 via a connection 124, which would typically include a so called "firewall" device or device of similar functionality. The local network interface 111 may comprise an Ethernet circuit card, a Bluetooth* wireless arrangement or an IEEE 802.11 wireless arrangement; however, numerous other types of interfaces may be practiced for the interface 111. [0021] In communication with the computer 101 are one or more relational databases 190. The databases may be in communication with the computer 101 on the local area communications network 122 or via the wide area communications network 120. It will be understood that data may be transferred to and from the one or more databases 190 to the 5 computer 101. Further, queries may be generated by the computer using associated database software to analyse and retrieve data stored on one or more of the databases 190. For example, SQL may be used to manage the data that is held on the one or more databases 190. [0022] The 1/O interfaces 108 and 113 may afford either or both of serial and parallel connectivity, the former typically being implemented according to the Universal Serial Bus (USB) standards and having corresponding USB connectors (not illustrated). Storage devices 109 are provided and typically include a hard disk drive (HDD) 110. Other storage devices such as a floppy disk drive and a magnetic tape drive (not illustrated) may also be used. An optical disk drive 112 is typically provided to act as a non-volatile source of data. Portable memory devices, such optical disks (e.g., CD-ROM, DVD, Blu-ray DiscTM), USB-RAM, portable, external hard drives, and floppy disks, for example, may be used as appropriate sources of data to the system 100. [0023] The components 105 to 113 of the computer module 101 typically communicate via an interconnected bus 104 and in a manner that results in a conventional mode of operation of the computer system 100 known to those in the relevant art. For example, the processor 105 is coupled to the system bus 104 using a connection 118. Likewise, the memory 106 and optical disk drive 112 are coupled to the system bus 104 by connections 119. Examples of computers on which the described arrangements can be practised include IBM-PC's and compatibles, Sun Sparcstations, Apple MacTM or a like computer systems. [0024] The method of the herein described processes may be implemented using the computer system 100 wherein the process of Fig. 4, to be described, may be implemented as one or more software application programs 133 executable within the computer system 100. In particular, the steps of the method of locating one or more stock items are effected by instructions 131 (see Fig. 1 B) in the software 133 that are carried out within the computer system 100. The software instructions 131 may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the stock item location method and a second part and the corresponding code modules manages a user interface between the first part and the user. [0025] The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer system 100 from the computer readable medium, and then executed by the computer system 100. A computer readable medium having such software or computer program recorded on the 6 computer readable medium is a computer program product. The use of the computer program product in the computer system 100 preferably effects an advantageous apparatus for locating one or more stock items. [0026] The software 133 is typically stored in the HDD 110 or the memory 106. The software is loaded into the computer system 100 from a computer readable medium, and executed by the computer system 100. Thus, for example, the software 133 may be stored on an optically readable disk storage medium (e.g., CD-ROM) 125 that is read by the optical disk drive 112. A computer readable medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer system 100 preferably effects an apparatus for locating stock items. [0027] In some instances, the application programs 133 may be supplied to the user encoded on one or more CD-ROMs 125 and read via the corresponding drive 112, or alternatively may be read by the user from the networks 120 or 122. Still further, the software can also be loaded into the computer system 100 from other computer readable media. Computer readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and/or data to the computer system 100 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, CD-ROM, DVD, Blu-ray T M Disc, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the computer module 101. Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the computer module 101 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like. [0028] The second part of the application programs 133 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon the display 114. Through manipulation of typically the keyboard 102 and the mouse 103, a user of the computer system 100 and the application may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via the loudspeakers 117 and user voice commands input via the microphone 180.
7 [0029] Fig. 1 B is a detailed schematic block diagram of the processor 105 and a "memory" 134. The memory 134 represents a logical aggregation of all the memory modules (including the HDD 109 and semiconductor memory 106) that can be accessed by the computer module 101 in Fig. 1A. [0030] When the computer module 101 is initially powered up, a power-on self-test (POST) program 150 executes. The POST program 150 is typically stored in a ROM 149 of the semiconductor memory 106 of Fig. 1A. A hardware device such as the ROM 149 storing software is sometimes referred to as firmware. The POST program 150 examines hardware within the computer module 101 to ensure proper functioning and typically checks the processor 105, the memory 134 (109, 106), and a basic input-output systems software (BIOS) module 151, also typically stored in the ROM 149, for correct operation. Once the POST program 150 has run successfully, the BIOS 151 activates the hard disk drive 110 of Fig. 1A. Activation of the hard disk drive 110 causes a bootstrap loader program 152 that is resident on the hard disk drive 110 to execute via the processor 105. This loads an operating system 153 into the RAM memory 106, upon which the operating system 153 commences operation. The operating system 153 is a system level application, executable by the processor 105, to fulfil various high level functions, including processor management, memory management, device management, storage management, software application interface, and generic user interface. [0031] The operating system 153 manages the memory 134 (109, 106) to ensure that each process or application running on the computer module 101 has sufficient memory in which to execute without colliding with memory allocated to another process. Furthermore, the different types of memory available in the system 100 of Fig. 1A must be used properly so that each process can run effectively. Accordingly, the aggregated memory 134 is not intended to illustrate how particular segments of memory are allocated (unless otherwise stated), but rather to provide a general view of the memory accessible by the computer system 100 and how such is used. [0032] As shown in Fig. 1 B, the processor 105 includes a number of functional modules including a control unit 139, an arithmetic logic unit (ALU) 140, and a local or internal memory 148, sometimes called a cache memory. The cache memory 148 typically includes a number of storage registers 144 - 146 in a register section. One or more internal busses 141 functionally interconnect these functional modules. The processor 105 typically also has one or more interfaces 142 for communicating with external devices via the system bus 104, using a connection 118. The memory 134 is coupled to the bus 104 using a connection 119.
8 [0033] The application program 133 includes a sequence of instructions 131 that may include conditional branch and loop instructions. The program 133 may also include data 132 which is used in execution of the program 133. The instructions 131 and the data 132 are stored in memory locations 128, 129, 130 and 135, 136, 137, respectively. Depending upon the relative size of the instructions 131 and the memory locations 128-130, a particular instruction may be stored in a single memory location as depicted by the instruction shown in the memory location 130. Alternately, an instruction may be segmented into a number of parts each of which is stored in a separate memory location, as depicted by the instruction segments shown in the memory locations 128 and 129. [0034] In general, the processor 105 is given a set of instructions which are executed therein. The processor 1105 waits for a subsequent input, to which the processor 105 reacts to by executing another set of instructions. Each input may be provided from one or more of a number of sources, including data generated by one or more of the input devices 102, 103, data received from an external source across one of the networks 120, 102, data retrieved from one of the storage devices 106, 109 or data retrieved from a storage medium 125 inserted into the corresponding reader 112, all depicted in Fig. 1A. The execution of a set of the instructions may in some cases result in output of data. Execution may also involve storing data or variables to the memory 134. [0035] The disclosed arrangements use input variables 154, which are stored in the memory 134 in corresponding memory locations 155, 156, 157. The arrangements produce output variables 161, which are stored in the memory 134 in corresponding memory locations 162, 163, 164. Intermediate variables 158 may be stored in memory locations 159, 160, 166 and 167. [0036] Referring to the processor 105 of Fig. 1B, the registers 144, 145, 146, the arithmetic logic unit (ALU) 140, and the control unit 139 work together to perform sequences of micro operations needed to perform "fetch, decode, and execute" cycles for every instruction in the instruction set making up the program 133. Each fetch, decode, and execute cycle comprises: [0037] a fetch operation, which fetches or reads an instruction 131 from a memory location 128, 129, 130; [0038] a decode operation in which the control unit 139 determines which instruction has been fetched; and 9 [0039] an execute operation in which the control unit 139 and/or the ALU 140 execute the instruction. [0040] Thereafter, a further fetch, decode, and execute cycle for the next instruction may be executed. Similarly, a store cycle may be performed by which the control unit 139 stores or writes a value to a memory location 132. [0041] Each step or sub-process in the processes of Fig. 5 is associated with one or more segments of the program 133 and is performed by the register section 144, 145, 147, the ALU 140, and the control unit 139 in the processor 105 working together to perform the fetch, decode, and execute cycles for every instruction in the instruction set for the noted segments of the program 133. [0042] The method of locating one or more stock items may alternatively be implemented in dedicated hardware such as one or more integrated circuits performing the functions or sub functions of the method of locating one or more stock items. Such dedicated hardware may include graphic processors, digital signal processors, or one or more microprocessors and associated memories. [0043] Figs. 2A and 2B collectively form a schematic block diagram of a general purpose electronic device 201 including embedded components, upon which the herein described computer implemented methods to be described are desirably practiced. The electronic device 201 may be, for example, a mobile phone or a tablet device, in which processing resources are limited. Nevertheless, the methods to be described may also be performed on higher-level devices such as desktop computers, server computers, and other such devices with significantly larger processing resources. [0044] As seen in Fig. 2A, the electronic device 201 comprises an embedded controller 202. Accordingly, the electronic device 201 may be referred to as an "embedded device." In the present example, the controller 202 has a processing unit (or processor) 205 which is bi directionally coupled to an internal storage module 209. The storage module 209 may be formed from non-volatile semiconductor read only memory (ROM) 260 and semiconductor random access memory (RAM) 270, as seen in Fig. 2B. The RAM 270 may be volatile, non volatile or a combination of volatile and non-volatile memory. [0045] The electronic device 201 includes a display controller 207, which is connected to a video display 214, such as a liquid crystal display (LCD) panel or the like. The display 10 controller 207 is configured for displaying graphical images on the video display 214 in accordance with instructions received from the embedded controller 202, to which the display controller 207 is connected. [0046] The electronic device 201 also includes user input devices 213 which are typically formed by keys, a keypad or like controls. In some implementations, the user input devices 213 may include a touch sensitive panel physically associated with the display 214 to collectively form a touch-screen. Such a touch-screen may thus operate as one form of graphical user interface (GUI) as opposed to a prompt or menu driven GUI typically used with keypad-display combinations. Other forms of user input devices may also be used, such as a microphone (not illustrated) for voice commands or a joystick/thumb wheel (not illustrated) for ease of navigation about menus. [0047] As seen in Fig. 2A, the electronic device 201 also comprises a portable memory interface 206, which is coupled to the processor 205 via a connection 219. The portable memory interface 206 allows a complementary portable memory device 225 to be coupled to the electronic device 201 to act as a source or destination of data or to supplement the internal storage module 209. Examples of such interfaces permit coupling with portable memory devices such as Universal Serial Bus (USB) memory devices, Secure Digital (SD) cards, Personal Computer Memory Card International Association (PCMIA) cards, optical disks and magnetic disks. [0048] The electronic device 201 also has a communications interface 208 to permit coupling of the device 201 to a computer or communications network 120 (or local area communications network 122) via a connection 221. The connection 221 may be wired or wireless. For example, the connection 221 may be radio frequency or optical. An example of a wired connection includes Ethernet. Further, an example of wireless connection includes BluetoothTM type local interconnection, Wi-Fi (including protocols based on the standards of the IEEE 802.11 family), Infrared Data Association (IrDa) and the like. [0049] Typically, the electronic device 201 is configured to perform some special function. The embedded controller 202, possibly in conjunction with further special function components 210, is provided to perform that special function. For example, the device 201 may be a mobile telephone handset. In this instance, the components 210 may represent those components required for communications in a cellular telephone environment. Where the device 201 is a portable device, the special function components 210 may represent a number 11 of encoders and decoders of a type including Joint Photographic Experts Group (JPEG), (Moving Picture Experts Group) MPEG, MPEG-1 Audio Layer 3 (MP3), and the like. [0050] Other methods described hereinafter may be implemented using the embedded controller 202, where the process of Fig. 5 may be implemented as one or more software application programs 233 executable within the embedded controller 202. The electronic device 201 of Fig. 2A implements the described methods. In particular, with reference to Fig. 2B, the steps of the described methods are effected by instructions in the software 233 that are carried out within the controller 202. The software instructions may be formed as one or more code modules, each for performing one or more particular tasks. The software may also be divided into two separate parts, in which a first part and the corresponding code modules performs the described methods and a second part and the corresponding code modules manage a user interface between the first part and the user. [0051] The software 233 of the embedded controller 202 is typically stored in the non-volatile ROM 260 of the internal storage module 209. The software 233 stored in the ROM 260 can be updated when required from a computer readable medium. The software 233 can be loaded into and executed by the processor 205. In some instances, the processor 205 may execute software instructions that are located in RAM 270. Software instructions may be loaded into the RAM 270 by the processor 205 initiating a copy of one or more code modules from ROM 260 into RAM 270. Alternatively, the software instructions of one or more code modules may be pre installed in a non-volatile region of RAM 270 by a manufacturer. After one or more code modules have been located in RAM 270, the processor 205 may execute software instructions of the one or more code modules. [0052] The application program 233 is typically read by the processor 205 from the network 220, or loaded into the controller 202 or the portable storage medium 225 from other computer readable media. However, in some instances, the application programs 233 may be pre-installed and stored in the ROM 260 by a manufacturer, prior to distribution of the electronic device 201. In another alternative, the software application program 233 may be supplied to the user encoded on one or more CD-ROM (not shown) and read via the portable memory interface 206 of Fig. 2A prior to storage in the internal storage module 209 or in the portable memory 225. Computer readable storage media refers to any non-transitory tangible storage medium that participates in providing instructions and/or data to the controller 202 for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, CD ROM, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, flash memory, or a computer readable card such as a PCMCIA card and the like, whether or not such 12 devices are internal or external of the device 201. Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the device 201 include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like. A computer readable medium having such software or computer program recorded on it is a computer program product. [0053] The second part of the application programs 233 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon the display 214 of Fig. 2A. Through manipulation of the user input device 213 (e.g., the keypad), a user of the device 201 and the application programs 233 may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers (not illustrated) and user voice commands input via the microphone (not illustrated). [0054] Fig. 2B illustrates in detail the embedded controller 202 having the processor 205 for executing the application programs 233 and the internal storage 209. The internal storage 209 comprises read only memory (ROM) 260 and random access memory (RAM) 270. The processor 205 is able to execute the application programs 233 stored in one or both of the connected memories 260 and 270. When the electronic device 201 is initially powered up, a system program resident in the ROM 260 is executed. The application program 233 permanently stored in the ROM 260 is sometimes referred to as "firmware". Execution of the firmware by the processor 205 may fulfil various functions, including processor management, memory management, device management, storage management and user interface. [0055] The processor 205 typically includes a number of functional modules including a control unit (CU) 251, an arithmetic logic unit (ALU) 252 and a local or internal memory comprising a set of registers 254 which typically contain atomic data elements 256, 257, along with internal buffer or cache memory 255. One or more internal buses 259 interconnect these functional modules. The processor 205 typically also has one or more interfaces 258 for communicating with external devices via system bus 281, using a connection 261. [0056] The application program 233 includes a sequence of instructions 262 through 263 that may include conditional branch and loop instructions. The program 233 may also include data, 13 which is used in execution of the program 233. This data may be stored as part of the instruction or in a separate location 264 within the ROM 260 or RAM 270. [0057] In general, the processor 205 is given a set of instructions, which are executed therein. This set of instructions may be organised into blocks, which perform specific tasks or handle specific events that occur in the electronic device 201. Typically, the application program 233 waits for events and subsequently executes the block of code associated with that event. Events may be triggered in response to input from a user, via the user input devices 213 of Fig. 2A, as detected by the processor 205. Events may also be triggered in response to other sensors and interfaces in the electronic device 201. [0058] The execution of a set of the instructions may require numeric variables to be read and modified. Such numeric variables are stored in the RAM 270. The disclosed method uses input variables 271 that are stored in known locations 272, 273 in the memory 270. The input variables 271 are processed to produce output variables 277 that are stored in known locations 278, 279 in the memory 270. Intermediate variables 274 may be stored in additional memory locations in locations 275, 276 of the memory 270. Alternatively, some intermediate variables may only exist in the registers 254 of the processor 205. [0059] The execution of a sequence of instructions is achieved in the processor 205 by repeated application of a fetch-execute cycle. The control unit 251 of the processor 205 maintains a register called the program counter, which contains the address in ROM 260 or RAM 270 of the next instruction to be executed. At the start of the fetch execute cycle, the contents of the memory address indexed by the program counter is loaded into the control unit 251. The instruction thus loaded controls the subsequent operation of the processor 205, causing for example, data to be loaded from ROM memory 260 into processor registers 254, the contents of a register to be arithmetically combined with the contents of another register, the contents of a register to be written to the location stored in another register and so on. At the end of the fetch execute cycle the program counter is updated to point to the next instruction in the system program code. Depending on the instruction just executed this may involve incrementing the address contained in the program counter or loading the program counter with a new address in order to achieve a branch operation. [0060] Each step or sub-process in the processes of the methods described below is associated with one or more segments of the application program 233, and is performed by repeated execution of a fetch-execute cycle in the processor 205 or similar programmatic operation of other independent processor blocks in the electronic device 201.
14 [0061] Fig. 3 shows a general system diagram according to an embodiment. Multiple merchants, Merchant 1 (301A), Merchant 2 (301 B), Merchant 3 (301C) and Merchant 4 (301D), each store a set of stock data in the form of a CSV file within an independent database associated with that Merchant. Where Merchant 1 (301A) transfers 303 a single set of stock data in the form of a CSV file using a file transfer protocol (FTP) to a single independent database 305A for online storage. Merchant 2 (301 B) transfers 303 a single set of stock data in the form of a CSV file using a file transfer protocol (FTP) to a single independent database 305B for online storage. Merchant 3 (301C) transfers 303 a single set of stock data in the form of a CSV file using a file transfer protocol (FTP) to a single independent database 305C for online storage. Merchant 4 (301 D) transfers 303 a single set of stock data in the form of a CSV file using a file transfer protocol (FTP) to a single independent database 305D for online storage. [0062] Each separate independent database (305A - 305D) is associated with a single independent supplier or group of suppliers that are dependent or linked to each other. For example, a first database 305A may be operated by a merchant 301A owned by an operating company, whereas a second database 305B may be operated by a different merchant 301 B that is owned by a different operating company. [0063] Each set of stock data is associated with multiple stock items. The stock data includes data identifying items of stock that the associated merchant currently has in stock at specific stores operated by that merchant. This data may include a unique identification that identifies a specific stock item, such as a stock item code. Alternatively, the unique identification may be a unique stock item name or other indication. [0064] Further, the stock data may also include data identifying items of stock that the associated merchant usually has in stock at specific stores operated by that merchant, but one or more of those stores do not currently have the stock. [0065] Also, the stock data may provide an indication of the availability of one or more stock items that may be provided by that particular merchant. That is, a stock flag may be allocated to individual stock items in the data, where the flag identifies a stock item as being one of i) currently in stock ii) not currently in stock, but on order, iii) not currently in stock, not currently on order and iv) discontinued stock v) stock item not stocked. [0066] The stock data also includes data that identifies the location of one or more stores operated by that merchant. The location may be identified by any suitable method, such as an 15 address, a post code, directions that are relative to other locations or a map identifying the location. [0067] It will be understood that the stock data may be in any other suitable format, such as any suitable spread sheet format, data storage format or database format. [0068] The sets of stock data from each of the independent online storage facilities operated by each of the merchants is transferred 307 in the form of a CSV file using a file transfer protocol (FTP) to a single online storage facility 309. [0069] A data retrieval and aggregation module 311 retrieves and aggregates the individual sets of stock data obtained from the multiple independent databases by receiving the individual sets of stock data from two or more separate and independent databases. Therefore, a set of stock data may be retrieved from a first database and a different set of stock data may be retrieved from a second database. Each of the sets of stock data may be associated with components or stock items that are the same, similar or completely different. Further sets of stock data may also be retrieved from further separate independent databases. Therefore, the individual sets of stock data include data associated with stock items that may be held in stock by a particular merchant (or groups of affiliated merchants) according to the merchant's database. [0070] Each of these individual sets of stock data are then combined or aggregated into a single aggregated set of stock data and stored in a stock data storage module 190. The stock data storage module may be any suitable type of storage device as discussed previously including a relational database. [0071] The aggregated set of stock data may include two or more sets of stock data that have been sent from or have been received at the stock data storage module 190. That is, each set of at least two of those sets of stock data aggregated at the storage module 190 is associated with, or obtained from, two separate independent databases. Therefore, the aggregated stock data may include data that identifies stock items that are currently being held in stock by two or more independent merchants, an independent merchant and two or more groups of affiliated merchants, two or more independent merchants and a group of affiliated merchants or two or more groups of affiliated merchants, according to the merchants' databases. [0072] Also, data from linked databases may be retrieved and combined to form a single set of stock data. For example, where a first merchant is operated by a first company and that first 16 company is a subsidiary of a second company that operates one or more other merchants, the stock data retrieved from one or more databases associated with that first merchant may be combined or aggregated with stock data retrieved from one or more databases that are associated with the one or more other merchants to create a single set of stock data. [0073] Therefore, as an indication of the availability of the at least one stock item is provided within the aggregated set of stock data, this indication can be identified from the aggregated set of stock data based on the received stock item identification data and preferred stock location data. [0074] A location and stock evaluation module 313 is in communication with the stock data storage module 190. For example, the location and stock evaluation module 313 may communicate with the stock data storage module 190 using SQL. The location and stock evaluation module 313 receives a request from a web application 315 or a mobile telephone application 317. The web application 315 may be executed by a computing system as described herein, where the application 315 is available via a suitable Internet connection to the computer. The mobile telephone application 317 may also be downloaded from a suitable source such as the App store and then executed by an electronic device. The electronic device may be a mobile telephone, tablet device or portable computing device (such as an Pod touch or the like), as described herein, where the application 317 is executed on the mobile telephone and is in communication with the location and stock evaluation module 313 via a suitable Internet connection. [0075] The request includes stock item identification data and preferred stock location data. The location and stock evaluation module 313 prepares a query (for example, using SQL) based on the received stock item identification data and preferred stock location data to search the aggregated set of stock data within the stock data storage module 190. [0076] Therefore, the location and stock evaluation module 313 searches the aggregated set of stock data to find one or more matching stores that have a location that matches the preferred stock location data. It also searches, either concurrently or sequentially, the aggregated set of stock data to find one or more matching stores that stock the at least one stock item that matches the stock item identification data. In other words, the stock evaluation module 313 determines from within the aggregated set of stock data the location of one or more matching stores that have matching stock data. The matching stock data is determined by searching the aggregated set of stock data to find i) location data that matches the preferred stock location data and ii) one or more stock items that match the stock item unique 17 identification data. Based on the matching stock data, the location and stock evaluation module 313 communicates the one or more locations of the one or more matching stores (as retrieved from the stock data storage module 190) to the web application 315 or mobile application 317. [0077] It will be understood that any other suitable mechanism for searching and matching data may be used besides SQL. [0078] The system may also provide or communicate an indication of the availability of one or more desired stock items to the electronic device. The indication may be in the form of a data flag that is sent from the backend system to the electronic device, or message that the software of the electronic device can read and interpret appropriately. This indication may be sent at the same time as, before or after the location information is sent. The indication may be included within the same data packet as the location information or may be included within a separate data packet. [0079] The electronic device may read the stock indication information to create an output to feedback the stock indication to the user. For example, an icon may be displayed on the electronic device, where the icon is used to identify the indication. [0080] For example, the indication of the availability may be a clear indication that the stock item is available or is not available. In this example, a green flag icon may be displayed on the electronic device to indicate that a desired stock item is in stock at a particular location, whereas a red flag icon may indicate that a desired stock item is not in stock. [0081] Alternatively, the indication may be an indication that the stock item may be available, as it is unclear from the database search whether certain merchants have the item in stock. In this example, an orange flag icon may be displayed on the electronic device to indicate that it is unclear whether a desired stock item is in stock or not at a particular location. [0082] As a further alternative, the indication information may be an indication that the stock item is currently not available but should become available within a defined time period. For example, the indication may identify whether the stock item has been ordered or not. The defined time period may be, for example, one, two or a few days, or one, two or a few weeks. In this example, an green and red flag icon may be displayed on the electronic device to indicate that the desired item is currently out of stock, but will be back in stock soon.
18 [0083] Also, the indication information may be an indication that the stock item has been discontinued, or that the stock item has never been held in stock, by a particular merchant at a particular location. [0084] It will be understood that the indications output by the electronic device may be in other forms, such as audio, visual or tactile forms. An audio indication may be in the form of an audible message, sound file, audible signal or any other suitable type of audible indication. A visual indication may be in the form of an icon, symbol, message or any other suitable type of visual indication. A tactile indication may be in the form of a vibration signal or the like. [0085] Fig. 4 shows a flow diagram of a process executed on the herein described computing system. Step S401 includes receiving a plurality of sets of stock data from at least two independent databases. Step S403 includes creating an aggregated set of stock data from all stock data received from all the databases. Step S405 includes receiving stock item identification data from either an electronic device or a computing device. Step S407 includes receiving preferred stock location data from either an electronic device or a computing device. Step S409 includes identifying one or more locations of stock item(s) based on the received preferred stock location data and stock identification data. Step S411 includes outputting the location(s) of stock item(s) to the electronic device or computing device. [0086] Fig. 5 shows a flow diagram of a process executed on the herein described electronic device. Step S501 includes obtaining stock identification data. For example, the electronic device or computer may display a user interface to enable a user to enter a stock item identification number. The stock item identification number is a unique identification that identifies the stock item. Alternatively, the user may select a stock item from a list of stock items presented on the user interface. This selection is detected by the electronic device or computer and associates the selected item with a unique identification for that stock item. [0087] Step S503 includes obtaining preferred stock location data. For example, the electronic device or computer may display a user interface to enable a user to enter a desired location in the form of an address, postcode or GPS co-ordinates. Alternatively, the user may be prompted on the user interface to allow the electronic device or computer to use an available location detection system such as a GPS device or Internet based location system to identify the location of the electronic device or computer. The electronic device or computer may then create the preferred stock location data based on this location information.
19 [0088] Step S505 includes sending stock identification data and preferred stock location data to a location and stock evaluation module. For example, the user may be prompted on the user interface to allow the electronic device or computer to connect via the Internet to the location and stock evaluation module 313. Once connected, the electronic device or computer may send a data packet containing the stock identification data and preferred stock location data to the location and stock evaluation module 313. [0089] Step S507 includes receiving location(s) of stock item(s) from the location and stock evaluation module 313, where the one or more locations are identified from an aggregated set of stock data based on the sent stock item identification data and preferred stock location data. The aggregated set of stock data is created from a plurality of sets of stock data which are associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database. [0090] Step S509 includes outputting location(s) on the electronic device or computer. For example, the location may be displayed on the user interface of the electronic device or computer in the form of an address, directions, a map or any other suitable format. [0091] Fig. 6 shows a flow diagram of a process executed on the herein described electronic device specifically when being used by a plumber in the plumbing industry. [0092] Step S601 includes the step of the plumber finding the product on the application by, for example, browsing a list of available stock items or using a search function to search a local database of stock items, where the local database is stored on the electronic device. For example, the local database may be a replica of the aggregated set of stock data stored in the stock data storage module 190. [0093] Step S603 includes the step of the plumber selecting a stock button displayed on the graphical user interface of the electronic device, where the stock button identifies the particular stock item being searched for. Alternatively, the plumber may click on a particular stock code associated with stock item being searched for. [0094] Step S605 includes the plumber selecting either a current location (using the electronic device GPS) or entering a postcode, for example. This information is then used by the system as the preferred stock location data.
20 [0095] Step S607 includes the application on the electronic device sending the product code and postcode to the live database over the communications network. Step S609 includes the database returning to the electronic device a list of stores relating to the query associated with the product code and preferred stock location, and also returning a stock flag (for example, orange or green) associated with that stock item for each relevant store, i.e. for each store that stocks the stock item that is within a defined distance of the preferred stock location. [0096] Step S611 includes the plumber selecting the store they would like to visit on the user interface of the electronic device, and the electronic device obtaining and outputting (e.g. displaying) the address of that selected store by either retrieving the address information from the local database or performing a search and retrieving the address information from a search engine via an internet connection. Alternatively, the plumber can click on a phone number that is displayed on the user interface to call that number from the electronic device. [0097] The following statements define further features of various embodiments of the invention. [0098] The aggregated stock data may be created and/or updated on a regular basis. [0099] The stock item identification data may include a unique identification that uniquely identifies an individual stock item. [00100] The preferred stock location data may include a GPS reference received from the electronic device. [00101] The GPS reference may be a GPS reference of the location of the electronic device. [00102] The preferred stock location data may include one or more of a postcode and a physical address. [00103] The plurality of sets of stock data may be received from the independent databases at regular intervals. [00104] The method may include the step of searching the aggregated set of stock data to find one or more matching stores that have a location that matches the preferred stock location data.
21 [00105] The method may include the step of searching the aggregated set of stock data to find one or more matching stores that stock the at least one stock item that matches the stock item identification data. [00106] The method may include the step of determining within the aggregated set of stock data the location of one or more matching stores that have matching stock data, where the matching stock data is determined by determining whether the aggregated set of stock data includes location data that matches the preferred stock location data and one or more stock items that match the stock item unique identification data, and based on the matching stock data communicating the one or more locations of the one or more matching stores to the electronic device. [00107] The preferred stock location data may be obtained by accessing GPS co-ordinates using a GPS device. [00108] The stock item identification data may be obtained upon activation of a stock button. [00109] The stock item identification data may be obtained upon receiving a text input that relates to a stock code. [00110] The aggregated set of stock data may be searched to find one or more matching stores that have a location that matches the preferred stock location data. [00111] The aggregated set of stock data may be searched to find one or more matching stores that stock the at least one stock item that matches the stock item identification data. [00112] The location of one or more matching stores that have matching stock data may be determined from within the aggregated set of stock data, where the matching stock data is determined by determining whether the aggregated set of stock data includes location data that matches the preferred stock location data and one or more stock items that match the stock item unique identification data, and based on the matching stock data communicating the one or more locations of the one or more matching stores to the electronic device. [00113] Industrial Applicability [00114] The arrangements described are applicable to the computer and data processing industries and particularly for the mobile telephone and tablet industries.
22 [00115] The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the scope and spirit of the invention, the embodiments being illustrative and not restrictive. [00116] In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including", and not "consisting only of". Variations of the word "comprising", such as "comprise" and "comprises" have correspondingly varied meanings.
Claims (5)
1. A computer implemented method of locating at least one stock item, the method comprising the steps of: receiving a plurality of sets of stock data associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database; creating an aggregated set of stock data from the plurality of sets of stock data; receiving stock item identification data and preferred stock location data; identifying one or more locations of at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and outputting the one or more locations of the at least one stock item.
2. The method further comprising the steps of: identifying an indication of the availability of the at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and outputting the indication of the availability of the at least one stock item.
3. A system for locating at least one stock item, the system comprising: a data retrieval and aggregation module adapted to receive a plurality of sets of stock data associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database, and create an aggregated set of stock data from the plurality of sets of stock data; a location and stock evaluation module adapted to receive stock item identification data and preferred stock location data, identify one or more locations of at least one stock item from the aggregated set of stock data based on the received stock item identification data and preferred stock location data, and output the one or more locations of the at least one stock item.
4. A computer or electronic device implemented method of locating at least one stock item, the method comprising the steps of: obtaining stock item identification data and preferred stock location data; 24 sending the obtained stock item identification data and preferred stock location data to a location and stock evaluation module, receiving one or more locations of the at least one stock item, where the one or more locations are identified from an aggregated set of stock data based on the sent stock item identification data and preferred stock location data, wherein the aggregated set of stock data is created from a plurality of sets of stock data which are associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database, and outputting the received one or more locations.
5. A computer or electronic device for locating at least one stock item, the computer or electronic device comprising: a data input module adapted to obtain stock item identification data and preferred stock location data; a communication module adapted to send the obtained stock item identification data and preferred stock location data to a location and stock evaluation module, and receive one or more locations of the at least one stock item, where the one or more locations are identified from an aggregated set of stock data based on the sent stock item identification data and preferred stock location data, wherein the aggregated set of stock data is created from a plurality of sets of stock data which are associated with a plurality of stock items, where each set of at least two sets of the plurality of sets of stock data is associated with a separate independent database; and an output module adapted to output the received one or more locations. CAROMA INDUSTRIES LIMITED Patent Attorneys for the Applicant/Nominated Person SPRUSON & FERGUSON
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2014100538A AU2014100538A4 (en) | 2014-05-22 | 2014-05-22 | Method and system for locating stock items |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2014100538A AU2014100538A4 (en) | 2014-05-22 | 2014-05-22 | Method and system for locating stock items |
Publications (1)
Publication Number | Publication Date |
---|---|
AU2014100538A4 true AU2014100538A4 (en) | 2014-07-03 |
Family
ID=51228618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AU2014100538A Ceased AU2014100538A4 (en) | 2014-05-22 | 2014-05-22 | Method and system for locating stock items |
Country Status (1)
Country | Link |
---|---|
AU (1) | AU2014100538A4 (en) |
-
2014
- 2014-05-22 AU AU2014100538A patent/AU2014100538A4/en not_active Ceased
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2017200055B2 (en) | Integrated developer workflow for data visualization development | |
US11227006B2 (en) | Content-aware filter options for media object collections | |
KR101891582B1 (en) | Method and system for processing highlight comment in content | |
US20150019966A1 (en) | Method for processing data and electronic device thereof | |
US7831929B2 (en) | Method, system, and program product for controlling a display on a data editing screen | |
JP4939652B2 (en) | Automatic contact information input by position detection | |
JP2008226061A (en) | Image tag designating device, image searching device, operation control method therefor and program for controlling those computers | |
EP2819071A1 (en) | Systems and methods for displaying and analyzing employee history data | |
JP2017199060A (en) | Instrument maintenance device, instrument maintenance method, instrument maintenance program, and recording medium | |
KR20140106887A (en) | A method for displaying program and an electronic device thereof | |
EP3214827A1 (en) | Application session recording and replaying | |
JP2017117115A (en) | Content control program, content control method, content control device, and content display device | |
JP4677201B2 (en) | Computer system, method for inputting data to computer system, computer program, and storage medium | |
AU2014100538A4 (en) | Method and system for locating stock items | |
NZ625420A (en) | Method and system for locating stock items | |
US9529782B2 (en) | Unified modeling of HTML objects for user interface test automation | |
US20150229718A1 (en) | Protocol for exchanging data between two devices | |
KR20170061682A (en) | Automated computing system personalization | |
LU100517B1 (en) | Method and system for curating, accessing, and displaying a plurality of data records pertaining to premises, and a plurality of devices installed in the premises | |
CN113778779B (en) | Monitoring method, system, device, electronic equipment and medium of data interface | |
KR102456580B1 (en) | Method and system for managing reservations for pet owners | |
JP6247542B2 (en) | Monitoring point definition changing method and engineering device | |
KR101944404B1 (en) | Method and system for providing stock price information | |
US20230244204A1 (en) | Simplified plc programming with mobile device | |
CN107908409A (en) | Application control method, apparatus, computer installation and computer-readable recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FGI | Letters patent sealed or granted (innovation patent) | ||
MK22 | Patent ceased section 143a(d), or expired - non payment of renewal fee or expiry |