EP4022542A1 - Tracking of objects - Google Patents

Tracking of objects

Info

Publication number
EP4022542A1
EP4022542A1 EP20757612.5A EP20757612A EP4022542A1 EP 4022542 A1 EP4022542 A1 EP 4022542A1 EP 20757612 A EP20757612 A EP 20757612A EP 4022542 A1 EP4022542 A1 EP 4022542A1
Authority
EP
European Patent Office
Prior art keywords
event
objects
occurred
last
events
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.)
Withdrawn
Application number
EP20757612.5A
Other languages
German (de)
French (fr)
Inventor
Hermann HERTER
Andrej Ceh
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.)
Bayer AG
Original Assignee
Bayer AG
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 Bayer AG filed Critical Bayer AG
Publication of EP4022542A1 publication Critical patent/EP4022542A1/en
Withdrawn legal-status Critical Current

Links

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/083Shipping
    • G06Q10/0833Tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof

Definitions

  • the present invention is concerned with tracking objects.
  • the present invention relates to a method, a device and a computer program product for tracking objects.
  • Tracking objects plays an important role in many areas of the economy.
  • One example is the tracking of goods along their value chain.
  • Goods are usually given a unique identifier (e.g. a serial number) (serialization) so that they can be clearly identified at a later point in time.
  • the unique identifier is usually printed as an optoelectronically readable code (barcode, 2D code) on the packaging of goods or is stored in an RFID transponder that is connected to the goods.
  • the unique identifiers are recorded at various points in the value chain, e.g. during packaging, loading, upon arrival e.g. in a warehouse and / or upon receipt by a customer and / or the like, and the respective status changes of the goods are stored in a database.
  • the status changes are usually recorded in a relational database in the form of a table.
  • the table usually includes the unique identifiers of the goods as well as information on which (defined) events have occurred for the respective goods. This is shown by way of example in FIG. 1.
  • 1 (a) shows five objects O1, 02, 03, 04 and 05. Each object can be identified using a unique identifier; in the present case based on the object identifiers 01, 02, 03, 04 and 05.
  • Information on the objects is stored in table form in a data memory DB.
  • the respective object is represented in the data memory by its object identifier.
  • two events E1 and E2 are shown schematically.
  • the event El has occurred for objects 01 and 02; event E2 occurred for objects 03, 04 and 05.
  • the data memory DB is stored for the objects which event has occurred in each case.
  • the event is represented in the table by an event identifier (El, E2).
  • Fig. 1 (c) it is shown that two further events E3 and E4 have occurred.
  • Event E3 occurred for objects 01 and 02;
  • Event E4 has occurred for objects 03 and 04.
  • the data memory DB it is in turn stored for the objects which event has occurred in each case.
  • Fig. 1 (d) it is shown that four further events E5, E6, E7 and E8 have occurred.
  • event E8 has occurred for object 05.
  • the data memory DB in turn, it is stored for the objects which event has occurred in each case.
  • the number N of objects that are tracked is significantly greater than the number n of events that occur.
  • the number N of tracked Objects take on very great values. This means that a large amount of data has to be generated and stored.
  • the data is used by various parties involved in the value chain of goods and must accordingly be transmitted from one party to another. This generates a large amount of data traffic.
  • the task was to reduce the amount of data required for tracking objects.
  • a first object of the present invention is therefore a method for tracking objects, comprising the steps:
  • each object being represented by a unique object identifier in the first table, with the event that is stored for each object in the first table for each object respective object occurred last, with the respective previous event being entered in the second table for each event immediately preceding an event.
  • Another object of the present invention is a device comprising
  • control and computing unit is configured to cause the input unit to receive object identifiers of a plurality of objects, wherein the control and computing unit is configured to generate a first table, each object in the first table by the respective one Object identifier is represented, wherein the control and processing unit is configured to cause the input unit to receive information about events and about those objects for which the respective events have occurred, wherein the control and processing unit is configured in the first table to record for the objects which event occurred last, wherein the control and processing unit is configured to generate a second table and to record the immediately preceding event in the second table for each event which has been preceded by an event, the control and processing unit being configured to record the first table and the second Save the table in the data store.
  • Another object of the present invention is a computer program product comprising a program code which is stored on a data carrier and which causes a computer system to carry out the following steps when the program code is loaded into the main memory of the computer system:
  • the present invention is for tracking objects.
  • An "object” is preferably a physical (tangible, corporeal) object.
  • the objects described here are preferably goods.
  • the term “goods” is understood to mean movable objects, which are or can be the subject of trade.
  • Particularly preferred objects (goods) are pharmaceutical products (drugs, medicaments, diagnostics and others), pesticides (e.g. herbicides, insecticides, fungicides), pesticides (e.g. pesticides) and / or seeds.
  • pesticides e.g. herbicides, insecticides, fungicides
  • pesticides e.g. pesticides
  • / or seeds e.g. pesticides
  • it is also conceivable to apply the invention to disembodied objects such as data (music files, image files, video files, document files, presentation files, data packages, software modules, programming libraries or the like).
  • An object within the meaning of the invention can comprise several components; for example, an object can be a product in a package. It is also conceivable that an object is a pallet or a transport box or a container or the like that comprises a plurality of objects (e.g. goods).
  • the starting point for the present invention is a large number of objects.
  • the term “multiplicity” means a number N of more than ten, preferably more than one hundred.
  • the number N of objects that are tracked according to the invention is usually more than a thousand. As already described in the introduction, N is an integer.
  • the plurality of objects includes both physical and incorporeal objects; For example, several objects can be combined into one logical object (see WO2018019720A1 page 5 line 27 to page 6 line 5).
  • unique identifier indicates that the unique identifier can be assigned to exactly one object; there are no two objects that have the same identifier.
  • the unique identifier can be a number or an alphanumeric code or a binary code or a hexadecimal code or the like.
  • the respective object is processed under the unique identifier in a system for electronic data processing (EDP system), i.e. a unique identifier represents the respective object in the EDP system.
  • EDP system electronic data processing
  • the unique identifier of an object is also referred to in this description as the object identifier.
  • Physical objects are usually equipped with an information carrier that includes the respective object identifier.
  • the object identifier is printed as an optoelectronic code (e.g. as a barcode or 2D code (e.g. DataMatrix or QR code)) or that the object identifier is in an RFID transponder that is connected to the object is stored.
  • the objects of the present invention are processed, ie they are subject to at least one process step, usually a plurality of process steps.
  • a process step is also referred to as an event in this description.
  • Such an event usually leads to a changed state / status of the respective object. Examples of events are: packing, loading, transporting, sending, receiving, unloading, reloading, repacking, unpacking, heating, cooling and the like. Events within the meaning of the invention can also be changes in status / changes in status which are undesirable, such as, for example, being lost, dropped, broken and the like.
  • an object does not experience a change of state due to an event; For example, it is conceivable that several objects are combined into one logical object according to an event (collective formation). It is also conceivable that several events are combined in one event, for example an event can be combined with the
  • transport includes the events “packing”, “loading”, “moving from a location A to a location B” and “unloading”.
  • events can be defined by further information, e.g. when the event occurred, where the event occurred, by whom the event was initiated / carried out, why the event occurred and the like.
  • An event (like an object) usually has a unique identifier by which the event can be identified.
  • Such an event identifier represents the respective event in an IT system.
  • the event identifier can be a number or an alphanumeric code or a binary code or a hexadecimal code or the like.
  • the multiple events usually follow one another in time. If two events occur at the same time, they can either be combined into one event, or one can choose one of the events that is assumed to have occurred before the other event.
  • an event history (chain of events) can be constructed in any case.
  • An event history is a chain of chronologically consecutive events. In such an event history there is an event that last occurred for the respective object. This event is also referred to in this description as the “last event” or “latest event”. Furthermore, there is a first event in such an event history.
  • each event in the event history is preceded by exactly one event (or, as described above, an event history can be constructed in which, with the exception of the first event, each event is preceded by exactly one event).
  • This immediately preceding or preceding event is also referred to in this description as the previous event.
  • the term “immediately” means that, according to the event history, no further event occurred (or was recorded) for the respective object between an event and its previous event.
  • the number n of events that can occur for the large number of objects is usually smaller than the number of objects (n ⁇ N). Typically, specific events occur for multiple objects.
  • An event Ei usually affects more than one object, an event E 2 more than one object, and so on.
  • tracking means that the event history is recorded and recorded for the individual objects, so that the event history can be determined (reproduced) on the basis of the information recorded for each object.
  • the event histories of objects are recorded and recorded with the aid of two tables, a first table and a second table.
  • the term “table” is to be interpreted broadly.
  • the term “table” is understood to mean any orderly compilation of data.
  • a first table contains information about the objects that are being tracked.
  • the last event (only) is entered for each object for which at least one event has occurred.
  • the immediately preceding event (the preceding event) is entered for each event that has occurred for at least one object and which has been preceded by at least one event.
  • a new event E occurs for a number N of objects
  • the last events already entered in the first table for the objects are replaced by the new (last) event E.
  • the new event E is entered in the second table and for the new event E it is entered which event immediately preceded event E.
  • the last event for this object is first identified in the first table. You then use the second table to check whether an event preceded the last event. If not, the event history only consists of the last event. If a previous event is listed for the last event in the second table, the event history includes at least the last event and its previous event. The second table is now used to check whether the previous event itself has a previous event. If not, the chain of events only consists of the last event and its previous event. If, on the other hand, the preceding event of the last event has a preceding event, the chain of events includes at least the last event, its preceding event and the preceding event of the preceding event. The process of checking whether there is another previous event continues until there is no further previous event. The event history then consists of the last event and all identified previous events.
  • FIG. 1 schematically shows the tracking of objects according to the previous (classic) procedure.
  • Figures 1 (a) to 1 (d) have already been described in detail above.
  • FIG. 2 shows schematically and by way of example a preferred embodiment of the present invention.
  • the situation shown in FIG. 2 (a) follows in time the situation shown in FIG. 1 (a).
  • the starting point of the invention are the five objects O1, 02, 03, 04 and 05 already shown in FIG. 1 (a), which can be identified by their unique identifiers.
  • a data memory DB information on the objects is collected in table form on the basis of the unique object identifiers.
  • two events E1 and E2 have occurred. Event El affects objects 01 and 02; Event E2 relates to objects 03, 04 and 05.
  • a first table (Tab.
  • FIG. 2 (b) (as in FIG. 1 (c)) two new events have occurred, E3 and E4, with event E3 relating to objects O1 and 02 and event E4 relating to objects 03 and 04.
  • event E3 relating to objects O1 and 02
  • event E4 relating to objects 03 and 04.
  • the first table (Tab. 1) (E3 for 01 and 02; E4 for 03 and 04 and E2 for 05).
  • the second table (Tab. 2) the corresponding previous event is recorded for each event that has a previous event (El is the previous event of E3 and E2 is the previous event of E4; El and E2 in turn have no previous events).
  • the history of the events that have taken place can be read off for each object. This is explained using the example of object 01.
  • the last event that occurred for object 01 is event E3.
  • the event E3 preceded the event E3.
  • the event E1 is not listed in the second table (or, as described in relation to FIG. 2 (a), it is recorded in the second table for the event E1 that it has no preceding event). Accordingly, the event history for object 01 is: E1 ⁇ E3.
  • the procedure for tracking objects shown in FIG. 2 (b) manages with fewer entries in the data memory than the procedure shown in FIG. 1 (c); in the case of Fig. 2 (b) there are 7 entries (distributed over two tables) and in the case of Fig. 1 (c) there are 9 entries.
  • Fig. 2 (c) (as in Fig. 1 (d)) four new events have occurred, E5, E6, E7 and E8, with the event E5 the objects 01 and 02, the event E6 the object 03, the event E7 relates to object 04 and event E8 relates to object 05.
  • first table (Tab. 1), in turn, only the event that occurred last is recorded for each object. This means that the “new, most recently occurred event” replaces the “previously last occurred event”.
  • the second table (Tab. 2), the respective previous event is recorded for each event that had a previous event.
  • the history of the events that have taken place can be read off for each object. This is explained using the example of object 04.
  • the last event that occurred for object 04 is event E7.
  • event E4 preceded event E7.
  • event E2 preceded event E4.
  • the event E2 is not listed in the second table (or, as described with reference to FIG. 2 (a), it is recorded in the second table for the event E2 that E2 has no preceding event). Accordingly, the event history for object 04 is: E2 ⁇ E4 ⁇ E7.
  • the procedure for tracking objects shown in FIG. 2 (c) manages with fewer entries than the procedure shown in FIG. 1 (d); in the case of Fig. 2 (c) there are 11 entries (distributed over two tables) and in the case of Fig. 1 (d) there are 14 entries.
  • the difference in the number of entries is comparatively small (11 entries compared to 14 entries in relation to the scenarios in FIGS. 2 (c) and 1 (d)).
  • the events listed in this example only affected a small number of objects.
  • events E6, E7, and E8 each only affected a single object.
  • the numbers of the entries for the procedure shown in FIGS. 1 (classic) and 2 (according to the invention) are the same large.
  • events affect a large number of objects.
  • the tracking of objects according to the invention requires far fewer entries in a data memory than the classic procedure.
  • FIG. 3 shows, by way of example and schematically, a further embodiment of the present invention.
  • the event history is shown schematically for five objects O1, 02, 03, 04 and 05.
  • the event histories are for objects 01 and 02: E1 ⁇ E3 for objects 03 and 04: E2 ⁇ E4 for object 05: E2.
  • the scenario shown in FIG. 3 (a) corresponds to the scenario shown in FIG. 2 (b).
  • the scenario shown in FIG. 3 (b) follows on in time from the scenario shown in FIG. 3 (a).
  • a new event E6 has occurred.
  • the event E6 concerns the objects 02, 03, 04 and 05. If, as previously described, one would now replace the last event in the first table (Tab. 1) with the event E6 for each object affected by the event E6, and in the second table (Tab. 2) record its predecessor event for event E6, there would be three predecessor events for event E6, depending on which object one would assume.
  • the combination of the first table and the second table would also no longer allow the event history to be reproduced for each object.
  • the reason for this discrepancy is that the same event occurred for objects 02, 03, 04 and 05, but the objects have a different event history. Something like this can happen, for example, if the events are defined very generically, such as the event "Receipt by the customer”. To avoid this discrepancy, events can be defined more specifically to prevent an event from occurring in different places from different event histories.
  • a preferred embodiment generates different event identifiers for an event that occurs for objects that have different event histories. This is shown schematically and by way of example in FIG. 3 (c).
  • the information is received that an event E6 has occurred which affects objects 02, 03, 04 and 05.
  • the first table (Tab. 1) is used to check whether all objects that are affected by event E6 have the same last event.
  • the last events are from Fig. 3 (a) in the first table from Fig. 3 (c).
  • Objects 03 and 04 have the same last event: E4.
  • Objects 02 and 05 however, have other last events: E3 (in the case of 02) and E2 (in the case of 05).
  • the first step is to form groups. As many groups are formed as there are different last events for the objects concerned. In the present case, there are three different last events for the affected objects 02, 03, 04 and 05: E3, E4 and E2. So three groups are formed. The last events are assigned to the groups; that is, there is a group to which the last event E3 is assigned, there is a group to which the last event E4 is assigned, and there is a group to which the last event E2 is assigned. The objects are assigned to the groups.
  • Each object is assigned to exactly one group, namely the group to which the event is assigned, which is the last event for the respective object.
  • Object 02 is assigned to the group to which the last event E3 is assigned.
  • Objects 03 and 04 are assigned to the group to which event E4 is assigned.
  • the object 05 is assigned to the group to which the last event E2 is assigned.
  • just as many event IDs are generated for the new event E6 as there are groups; in the present case three event identifiers, namely the event identifiers E6a, E6b and E6c.
  • Each event ID is assigned to exactly one group; this can be done arbitrarily;
  • the group with the object 02 is assigned the event ID E6a
  • the group with the objects 03 and 04 is assigned the event ID E6b
  • the group with the object 05 is assigned the event ID E6c.
  • the last event from FIG. 3 (a) in the first table for each object is replaced by that event identifier which is assigned to the group to which the respective object belongs.
  • the last event for object 02 is event E6a
  • the last event for objects 03 and 04 is event E6b
  • the last event for object 05 is event E6c.
  • the previous last event is E3. According to FIG.
  • a new entry is created for each of the last events that occurred in the first table. For the last event E5 it is recorded that the previous event is the event E3; for the last event E6a it is recorded that the previous event is the event E3; for the last event E6b it is recorded that the previous event is the event E4; for the last event E6c it is recorded that the previous event is the event E2.
  • Fig. 4 shows schematically and by way of example an embodiment of the device according to the invention.
  • the device (10) comprises an input unit (20), a control and computing unit (30), a data memory (40) and an output unit (50).
  • the device (10) receives information about events and the objects that are affected by the events via the input unit (20).
  • the control and computing unit (30) is configured to manage the information on the events and the objects in order to be able to reproduce an event history for each object. For this purpose, the control and computing unit (30) generates and maintains two tables, a first table and a second table.
  • the tables can be stored in the data memory (40) and / or displayed to a person via the output unit (50).
  • the data memory (40) can be an integral part of the device (10); but it is also conceivable that the data memory (40) is a separate unit is executed, which the control and computing unit (30) can access, for example via a network.
  • the device according to the invention can, for example, be designed as a computer system.
  • a "computer system” is a system for electronic data processing that processes data using programmable arithmetic rules. Such a system usually comprises a “computer”, that unit which comprises a processor for performing logical operations, and peripherals.
  • peripherals are all devices that are connected to the computer and are used to control the computer and / or as input and output devices. Examples of this are monitors (screens), printers, scanners, mice, keyboards, drives, cameras, microphones, loudspeakers, etc. Internal connections and expansion cards are also considered peripherals in computer technology.
  • Today's computer systems are often divided into desktop PCs, portable PCs, laptops, notebooks, netbooks and tablet PCs and so-called handheids (e.g. smartphones); all of these devices can be used to practice the invention.
  • the inputs into the computer are made via input means such as a keyboard, a mouse, a microphone, a network connection, an external data memory and / or the like.
  • input means such as a keyboard, a mouse, a microphone, a network connection, an external data memory and / or the like.
  • the selection of an entry from a virtual menu or a virtual list or the clicking of a selection box and the like should also be understood as input.
  • Outputs usually take place via a screen (monitor), on a printer, via loudspeakers and / or by storage on a data memory.
  • FIG. 5 shows schematically in a flowchart those steps which a computer system carries out in a preferred embodiment of the present invention when the computer system according to the invention is loaded in a main memory of the computer system and is being carried out.
  • the computer system receives information on an event E and on one or more objects O that are affected by the event. It usually receives the event ID of the event that has occurred and a list of object IDs of those objects that are affected by the event.
  • a further step (110) it is checked whether the event only affects a single object (
  • 1?).
  • the updated tables (Tab. 1 and / or Tab. 2) are saved in a further step (150) in a data memory (DB: Tab. 1, Tab. 2).
  • a further step (170) checks whether they all have the same last event (same LE?).
  • steps (140) and (150) are carried out for each individual object, that is, in the second table (Tab. 2) it is recorded that the last event is the previous event of event E, and in the first table (Tab. 1) it is recorded that event E is the last event for the respective object.
  • the updated tables (Table 1 and Table 2) are then stored in the data memory (step (150)).
  • step (170): “n” groups are formed in a further step (180) and the objects are assigned to the groups on the basis of the last events (“grouping”). If two objects have the same last event, they are assigned to the same group. There are as many groups as there are different final events.
  • new event IDs are generated for event E (“event ID creation”). As many event IDs are generated as there are groups.
  • event ID creation As many event IDs are generated as there are groups.
  • the generated event IDs are assigned to the groups (“assignment”); this can be done arbitrarily; an event identifier is assigned to each group. As a result of the group membership, an event identifier is also assigned to each object.
  • the first table (Tab. 1) is used to check for the individual objects which last event is recorded for them in the first table (“which LE?”).
  • the respective last event is the previous event for the generated event identifier that is assigned to the object.
  • the corresponding preceding event is recorded in the second table for each generated event identifier.
  • the previous last event is replaced by the generated event identifier assigned to the object.
  • the updated tables (Table 1 and Table 2) are stored in the data memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention relates to the tracking of objects. The present invention relates to a method, a system and a computer program product for tracking objects.

Description

Verfolgung von Objekten Tracking objects
Die vorliegende Erfindung befasst sich mit der Verfolgung von Objekten. Gegenstände der vorliegenden Erfindung sind ein Verfahren, eine Vorrichtung und ein Computerprogrammprodukt zur Verfolgung von Objekten. The present invention is concerned with tracking objects. The present invention relates to a method, a device and a computer program product for tracking objects.
Die Verfolgung von Objekten spielt in vielen Bereichen der Wirtschaft eine große Rolle. Als Beispiel sei die Verfolgung von Waren entlang ihrer Wertschöpfüngskette angeführt. Üblicherweise sind Waren mit einer eindeutigen Kennung (z.B. einer Seriennummer) versehen (Serialisierung), um sie zu einem späteren Zeitpunkt eindeutig identifizieren zu können. Die eindeutige Kennung wird üblicherweise als optoelektronisch lesbarer Code (Strichcode, 2D-Code) auf der Verpackung einer Ware aufgedruckt oder ist in einem RFID-Transponder, der mit der Waren verbunden ist, gespeichert. An verschiedenen Punkten der Wertschöpfüngskette, z.B. beim Verpacken, Verladen, bei Ankunft z.B. in einem Lager und/oder bei Entgegennahme durch einen Kunden und/oder dergleichen werden die eindeutigen Kennungen erfasst und es werden die jeweiligen Statusänderungen der Waren in einer Datenbank gespeichert. Tracking objects plays an important role in many areas of the economy. One example is the tracking of goods along their value chain. Goods are usually given a unique identifier (e.g. a serial number) (serialization) so that they can be clearly identified at a later point in time. The unique identifier is usually printed as an optoelectronically readable code (barcode, 2D code) on the packaging of goods or is stored in an RFID transponder that is connected to the goods. The unique identifiers are recorded at various points in the value chain, e.g. during packaging, loading, upon arrival e.g. in a warehouse and / or upon receipt by a customer and / or the like, and the respective status changes of the goods are stored in a database.
Üblicherweise werden die Statusänderungen in einer relationalen Datenbank in Form einer Tabelle festgehalten. Die Tabelle umfasst üblicherweise die eindeutigen Kennungen der Waren sowie Informationen dazu, welche (definierten) Ereignisse für die jeweiligen Waren eingetreten sind. Dies ist beispielhaft in Fig. 1 dargestellt. Fig. 1 (a) zeigt fünf Objekte Ol, 02, 03, 04 und 05. Jedes Objekt ist anhand einer eindeutigen Kennung identifizierbar; im vorliegenden Fall anhand der Objektkennungen 01, 02, 03, 04 und 05. In einem Datenspeicher DB sind Informationen zu den Objekten in Tabellenform gespeichert. Dabei wird das jeweilige Objekt in dem Datenspeicher durch seine Objektkennung repräsentiert. In Fig. 1 (b) sind schematisch zwei Ereignisse El und E2 dargestellt. Für die Objekte 01 und 02 ist das Ereignis El eingetreten; für die Objekte 03, 04 und 05 ist das Ereignis E2 eingetreten. In dem Datenspeicher DB wird für die Objekte hinterlegt, welches Ereignis jeweils eingetreten ist. Dabei wird das Ereignis in der Tabelle durch eine Ereigniskennung (El, E2) repräsentiert. In Fig. 1 (c) ist dargestellt, dass zwei weitere Ereignisse E3 und E4 eingetreten sind. Für die Objekte 01 und 02 ist das Ereignis E3 eingetreten; für die Objekte 03 und 04 ist das Ereignis E4 eingetreten. In dem Datenspeicher DB wird wiederum für die Objekte hinterlegt, welches Ereignis jeweils eingetreten ist. Dabei wird bei jedem neu eingetretenen Ereignis für jedes Objekt, für das das Ereignis eingetreten ist, ein neuer Eintrag erzeugt. In Fig 1 (d) ist dargestellt, dass vier weitere Ereignisse E5, E6, E7 und E8 eingetreten sind. Für die Objekte 01 und 02 ist das Ereignis E5 eingetreten; für das Objekt 03 ist das Ereignis E6 eingetreten; für das Objekt 04 ist das Ereignis E7 eingetreten; für das Objekt 05 ist das Ereignis E8 eingetreten. In dem Datenspeicher DB wird wiederum für die Objekte hinterlegt, welches Ereignis jeweils eingetreten ist. The status changes are usually recorded in a relational database in the form of a table. The table usually includes the unique identifiers of the goods as well as information on which (defined) events have occurred for the respective goods. This is shown by way of example in FIG. 1. 1 (a) shows five objects O1, 02, 03, 04 and 05. Each object can be identified using a unique identifier; in the present case based on the object identifiers 01, 02, 03, 04 and 05. Information on the objects is stored in table form in a data memory DB. The respective object is represented in the data memory by its object identifier. In Fig. 1 (b) two events E1 and E2 are shown schematically. The event El has occurred for objects 01 and 02; event E2 occurred for objects 03, 04 and 05. In the data memory DB is stored for the objects which event has occurred in each case. The event is represented in the table by an event identifier (El, E2). In Fig. 1 (c) it is shown that two further events E3 and E4 have occurred. Event E3 occurred for objects 01 and 02; Event E4 has occurred for objects 03 and 04. In the data memory DB it is in turn stored for the objects which event has occurred in each case. For each new event that occurs, a new entry is created for each object for which the event occurred. In Fig. 1 (d) it is shown that four further events E5, E6, E7 and E8 have occurred. Event E5 occurred for objects 01 and 02; event E6 has occurred for object 03; event E7 has occurred for object 04; event E8 has occurred for object 05. In the data memory DB, in turn, it is stored for the objects which event has occurred in each case.
Bei der in Fig. 1 (a) bis (d) dargestellten Verfolgung der Objekte wächst die Tabelle mit jedem neu eintretenden Ereignis um eine Anzahl neuer Einträge, die der Anzahl der Objekte entspricht, für die das neue Ereignis eintritt. Es sei angenommen, dass insgesamt N Objekte verfolgt werden, wobei N eine ganze Zahl und größer als 1 ist. Es treten die Ereignisse Ei bis E„ ein, wobei n eine ganze Zahl und größer als 1 ist. Vom Ereignis Ei sei eine Anzahl N\ an Objekten betroffen, vom Ereignis E2 sei eine Anzahl N2 an Objekten betroffen und so fort. Dann beträgt die Zahl Z der Einträge in der Datenbank Z=NI + N2 + ... +N„. With the tracking of the objects shown in FIGS. 1 (a) to (d), the table grows with each new event that occurs by a number of new entries which corresponds to the number of objects for which the new event occurs. Assume that a total of N objects are being tracked, where N is an integer and greater than 1. Events E1 to E "occur, where n is an integer and greater than 1. A number N \ of objects is affected by the event Ei, a number N 2 of objects is affected by the event E2, and so on. Then the number Z of entries in the database is Z = N I + N 2 + ... + N ".
Üblicherweise ist die Zahl N der Objekte, die verfolgt werden, wesentlich größer als die Zahl n der auftretenden Ereignisse. Insbesondere bei der Verfolgung von Waren kann die Zahl N der verfolgten Objekte sehr große Werte annehmen. Das bedeutet, dass eine große Datenmenge erzeugt und gespeichert werden muss. Üblicherweise werden die Daten von verschiedenen an der Wertschöpfungskette von Waren Beteiligten genutzt und müssen dementsprechend von einem Beteiligten an einen anderen Beteiligten übermittelt werden. Dies erzeugt eine großen Datenverkehr.Usually, the number N of objects that are tracked is significantly greater than the number n of events that occur. In particular when tracking goods, the number N of tracked Objects take on very great values. This means that a large amount of data has to be generated and stored. Usually, the data is used by various parties involved in the value chain of goods and must accordingly be transmitted from one party to another. This generates a large amount of data traffic.
Ausgehend vom Stand der Technik bestand die Aufgabe darin, die für die Verfolgung von Objekten notwendige Datenmenge zu reduzieren. Based on the state of the art, the task was to reduce the amount of data required for tracking objects.
Dies Aufgabe wird durch die Gegenstände der unabhängigen Patentansprüche gelöst. Bevorzugte Ausführungsformen finden sich in den abhängigen Patentansprüchen, in der vorliegenden Beschreibung und in den Figuren. This problem is solved by the subjects of the independent claims. Preferred embodiments can be found in the dependent claims, in the present description and in the figures.
Ein erster Gegenstand der vorliegenden Erfindung ist somit ein Verfahren zur Verfolgung von Objekten, umfassend die Schritte: A first object of the present invention is therefore a method for tracking objects, comprising the steps:
Bereitstellen einer Vielzahl von Objekten Providing a variety of objects
Erfassen von Ereignissen, die für die Objekte eingetreten sind, und Capturing events that occurred for the objects, and
Ablegen von Informationen zu den Objekten und zu den eingetretenen Ereignissen in einer ersten Tabelle und in einer zweiten Tabelle wobei in der ersten Tabelle jedes Objekt durch eine eindeutige Objektkennung repräsentiert wird, wobei in der ersten Tabelle für jedes Objekt dasjenige Ereignis abgelegt wird, das für das jeweilige Objekt zuletzt eingetreten ist, wobei in der zweiten Tabelle für jedes Ereignis, dem ein Ereignis unmittelbar vorangegangen ist, das jeweilige vorangegangene Ereignis eingetragen wird. Filing of information on the objects and the events that have occurred in a first table and in a second table, each object being represented by a unique object identifier in the first table, with the event that is stored for each object in the first table for each object respective object occurred last, with the respective previous event being entered in the second table for each event immediately preceding an event.
Ein weiterer Gegenstand der vorliegenden Erfindung ist eine Vorrichtung umfassend Another object of the present invention is a device comprising
- eine Eingabeeinheit - an input unit
- eine Steuer- und Recheneinheit und - a control and computing unit and
- einen Datenspeicher wobei die Steuer- und Recheneinheit konfiguriert ist, die Eingabeeinheit zu veranlassen, Objektkennungen einer Vielzahl von Objekten zu empfangen, wobei die Steuer- und Recheneinheit konfiguriert ist, eine erste Tabelle zu erzeugen, wobei jedes Objekt in der ersten Tabelle durch die jeweilige Objektkennung repräsentiert wird, wobei die Steuer- und Recheneinheit konfiguriert ist, die Eingabeeinheit zu veranlassen, Informationen über Ereignisse und über diejenigen Objekte, für die die jeweiligen Ereignisse eingetreten sind, zu empfangen, wobei die Steuer- und Recheneinheit konfiguriert ist, in der ersten Tabelle für die Objekte festzuhalten, welches Ereignis jeweils zuletzt eingetreten ist, wobei die Steuer- und Recheneinheit konfiguriert ist, eine zweite Tabelle zu erzeugen und in der zweiten Tabelle für jedes Ereignis, dem ein Ereignis vorangegangen ist, das unmittelbar vorangegangene Ereignis festzuhalten, wobei die Steuer- und Recheneinheit konfiguriert ist, die erste Tabelle und die zweite Tabelle in dem Datenspeicher zu speichern. a data memory, wherein the control and computing unit is configured to cause the input unit to receive object identifiers of a plurality of objects, wherein the control and computing unit is configured to generate a first table, each object in the first table by the respective one Object identifier is represented, wherein the control and processing unit is configured to cause the input unit to receive information about events and about those objects for which the respective events have occurred, wherein the control and processing unit is configured in the first table to record for the objects which event occurred last, wherein the control and processing unit is configured to generate a second table and to record the immediately preceding event in the second table for each event which has been preceded by an event, the control and processing unit being configured to record the first table and the second Save the table in the data store.
Ein weiterer Gegenstand der vorliegenden Erfindung ist ein Computerprogrammprodukt umfassend einen Programmcode, der auf einem Datenträger gespeichert ist, und der ein Computersystem dazu veranlasst, die folgenden Schritte auszuführen, wenn der Programmcode in den Arbeitsspeicher des Computersystems geladen ist: Another object of the present invention is a computer program product comprising a program code which is stored on a data carrier and which causes a computer system to carry out the following steps when the program code is loaded into the main memory of the computer system:
Empfangen von Objektkennungen einer Vielzahl von Objekten, Receiving object IDs for a large number of objects,
Erzeugen einer ersten Tabelle, wobei jedes Objekt in der ersten Tabelle durch die jeweilige Objektkennung repräsentiert wird, Creation of a first table, with each object in the first table being represented by the respective object identifier,
Empfangen von Informationen über Ereignisse und über diejenigen Objekte, für die die jeweiligen Ereignisse eingetreten sind, für alle Objekte, für die mindestens ein Ereignis eingetreten ist: Einträgen des jeweils zuletzt eingetretenen Ereignisses in die ersten Tabelle, Receipt of information about events and about those objects for which the respective events occurred, for all objects for which at least one event occurred: Entries of the last event that occurred in the first table,
Erzeugen einer zweiten Tabelle, für jedes Ereignis, das für mindestens ein Objekt eingetreten ist und dem mindestens ein Ereignis vorangegangen ist: Einträgen des unmittelbar vorangegangenen Ereignisses in die zweite Tabelle, Generating a second table for each event that occurred for at least one object and which was preceded by at least one event: Entries of the immediately preceding event in the second table,
Speichern der ersten Tabelle und der zweiten Tabelle in einem Datenspeicher. Storing the first table and the second table in a data store.
Die Erfindung wird nachstehend näher erläutert, ohne zwischen den Erfindungsgegenständen (Verfahren, Vorrichtung, Computerprogrammprodukt) zu unterscheiden. Die nachfolgenden Erläuterungen sollen vielmehr für alle Erfmdungsgegenstände in analoger Weise gelten, unabhängig davon, in welchem Kontext (Verfahren, Vorrichtung, Computerprogrammprodukt) sie erfolgen. The invention is explained in more detail below without distinguishing between the subjects of the invention (method, device, computer program product). Rather, the following explanations are intended to apply analogously to all subjects of the invention, regardless of the context in which (method, device, computer program product) they occur.
Wenn in der vorliegenden Beschreibung oder in den Patentansprüchen Schritte in einer Reihenfolge genannt werden, bedeutet dies nicht zwingend, dass die Erfindung auf die genannte Reihenfolge beschränkt ist. Vielmehr ist denkbar, dass die Schritte auch in einer anderen Reihenfolge oder auch parallel zueinander ausgeführt werden können; es sei denn, ein Schritt baut auf einem anderen Schritt auf, was zwingend erforderlich macht, dass der aufbauende Schritt nachfolgend ausgeführt wird (was im Einzelfall aber deutlich wird). Die genannten Reihenfolgen stellen damit bevorzugte Ausführungsformen dar. If steps are mentioned in an order in the present description or in the patent claims, this does not necessarily mean that the invention is restricted to the order mentioned. Rather, it is conceivable that the steps can also be carried out in a different order or also in parallel with one another; unless a step builds on another step, which makes it imperative that the next step is carried out (but this becomes clear in individual cases). The sequences mentioned thus represent preferred embodiments.
Die vorliegende Erfindung dient der Verfolgung von Objekten. Ein "Objekt" ist vorzugsweise ein physischer (greifbarer, körperlicher) Gegenstand. Vorzugsweise handelt es sich bei den hier beschriebenen Objekten um Waren. Unter dem Begriff "Waren" werden bewegliche Sachen verstanden, die Gegenstand des Handelsverkehrs sind oder sein können. Besonders bevorzugte Objekte (Waren) sind pharmazeutische Produkte (Arzneimittel, Medikamente, Diagnostika und andere), Pflanzenschutzmittel (z.B. Herbizide, Insektizide, Fungizide), Schädlingsbekämpfungsmittel (z.B. Pestizide) und/oder Saatgut. Es ist aber auch denkbar, die Erfindung auf körperlose Objekte wie beispielsweise Daten (Musikdateien, Bilddateien, Videodateien, Dokument-Dateien, Präsentationsdateien, Datenpakete, Softwarebausteine, Programmierbibliotheken oder dergleichen) anzuwenden. The present invention is for tracking objects. An "object" is preferably a physical (tangible, corporeal) object. The objects described here are preferably goods. The term "goods" is understood to mean movable objects, which are or can be the subject of trade. Particularly preferred objects (goods) are pharmaceutical products (drugs, medicaments, diagnostics and others), pesticides (e.g. herbicides, insecticides, fungicides), pesticides (e.g. pesticides) and / or seeds. However, it is also conceivable to apply the invention to disembodied objects such as data (music files, image files, video files, document files, presentation files, data packages, software modules, programming libraries or the like).
Ein Objekt im Sinne der Erfindung kann mehrere Bestandteile umfassen; beispielsweise kann ein Objekt ein Produkt in einer Verpackung sein. Denkbar ist ferner, dass ein Objekt eine Palette oder eine Transportbox oder ein Container oder dergleichen ist, der eine Mehrzahl an Objekten (z.B. Waren) umfasst. An object within the meaning of the invention can comprise several components; for example, an object can be a product in a package. It is also conceivable that an object is a pallet or a transport box or a container or the like that comprises a plurality of objects (e.g. goods).
Ausgangspunkt für die vorliegende Erfindung ist eine Vielzahl an Objekten. Der Begriff "Vielzahl" bedeutet eine Anzahl N von mehr als zehn, vorzugsweise mehr als einhundert. Üblicherweise beträgt die Anzahl N der Objekte, die erfindungsgemäß verfolgt werden, mehr als tausend. N ist wie bereits in der Einleitung beschrieben eine ganze Zahl. The starting point for the present invention is a large number of objects. The term “multiplicity” means a number N of more than ten, preferably more than one hundred. The number N of objects that are tracked according to the invention is usually more than a thousand. As already described in the introduction, N is an integer.
Es ist denkbar, dass die Vielzahl an Objekten sowohl körperliche als auch körperlose Objekte umfasst; zum Beispiel können mehrere Objekte zu einem logischen Objekt zusammengefasst werden (siehe hierzu WO2018019720A1 Seite 5 Zeile 27 bis Seite 6 Zeile 5). It is conceivable that the plurality of objects includes both physical and incorporeal objects; For example, several objects can be combined into one logical object (see WO2018019720A1 page 5 line 27 to page 6 line 5).
Ein Objekt im Sinne der vorliegenden Erfindung ist anhand einer eindeutigen Kennung eindeutig identifizierbar d.h. von anderen Objekten unterscheidbar. Der Begriff "eindeutige Kennung" weist daraufhin, dass sich die eindeutige Kennung genau einem Objekt zuordnen lässt; es gibt als keine zwei Objekte, die über dieselbe Kennung verfügen. An object within the meaning of the present invention can be clearly identified using a unique identifier, i.e. distinguishable from other objects. The term "unique identifier" indicates that the unique identifier can be assigned to exactly one object; there are no two objects that have the same identifier.
Die eindeutige Kennung kann eine Nummer oder ein alphanumerischer Code oder ein Binärcode oder ein Hexadezimalcode oder dergleichen sein. The unique identifier can be a number or an alphanumeric code or a binary code or a hexadecimal code or the like.
Unter der eindeutigen Kennung wird das jeweilige Objekt in einem System zur elektronischen Datenverarbeitung (EDV-System) prozessiert, d.h. eine eindeutige Kennung repräsentiert das jeweilige Objekt in dem EDV-System. Die eindeutige Kennung eines Objekts wird in dieser Beschreibung auch als Objektkennung bezeichnet. The respective object is processed under the unique identifier in a system for electronic data processing (EDP system), i.e. a unique identifier represents the respective object in the EDP system. The unique identifier of an object is also referred to in this description as the object identifier.
Üblicherweise sind körperliche Objekte mit einem Informationsträger ausgestattet, der die jeweilige Objektkennung umfasst. Es ist zum Beispiel denkbar, dass die Objektkennung als optoelektronischer Code (z.B. als Strichcode oder 2D-Code (z.B. DataMatrix- oder QR-Code)) auf dem Objekt aufgedruckt ist oder dass die Objektkennung in einem RFID-Transponder, der mit dem Objekt verbunden ist, gespeichert ist. Physical objects are usually equipped with an information carrier that includes the respective object identifier. For example, it is conceivable that the object identifier is printed as an optoelectronic code (e.g. as a barcode or 2D code (e.g. DataMatrix or QR code)) or that the object identifier is in an RFID transponder that is connected to the object is stored.
Die Objekte der vorliegenden Erfindung werden prozessiert, d.h. sie unterliegen mindestens einem Prozessschritt, üblicherweise einer Mehrzahl an Prozessschritten. Ein solcher Prozessschritt wird in dieser Beschreibung auch als Ereignis bezeichnet. Ein solches Ereignis führt üblicherweise zu einem veränderten Zustand / Status des jeweiligen Objekts. Beispiele für Ereignisse sind: Verpacken, Verladen, Transportieren, Versenden, Empfangen, Abladen, Umladen, Umpacken, Entpacken, Heizen, Kühlen und dergleichen. Ereignisse im Sinne der Erfindung können auch Zustandsänderungen / Statusänderungen sein, die unerwünscht sind, wie beispielsweise Abhandenkommen, Herunterfallen, Zerbrechen und dergleichen. Ferner ist es denkbar, dass ein Objekt durch ein Ereignis keine Zustandsänderung erfährt; z.B. ist es denkbar, dass gemäß einem Ereignis mehrere Objekte zu einem logischen Objekt zusammengefasst werden (Kollektivbildung). Denkbar ist auch, dass mehrere Ereignisse in einem Ereignis zusammengefasst werden, zum Beispiel kann ein Ereignis mit der Bezeichnung „Transportieren“ die Ereignisse „Verpacken“, „Verladen“, „von einem Ort A zu einem Ort B bewegen“ und „Abladen“ umfassen. The objects of the present invention are processed, ie they are subject to at least one process step, usually a plurality of process steps. Such a process step is also referred to as an event in this description. Such an event usually leads to a changed state / status of the respective object. Examples of events are: packing, loading, transporting, sending, receiving, unloading, reloading, repacking, unpacking, heating, cooling and the like. Events within the meaning of the invention can also be changes in status / changes in status which are undesirable, such as, for example, being lost, dropped, broken and the like. Furthermore, it is conceivable that an object does not experience a change of state due to an event; For example, it is conceivable that several objects are combined into one logical object according to an event (collective formation). It is also conceivable that several events are combined in one event, for example an event can be combined with the The term “transport” includes the events “packing”, “loading”, “moving from a location A to a location B” and “unloading”.
Für die Definition eines Ereignisses ist zumindest die Angabe der Zustandsänderung / Statusänderung ( was passiert ist) sowie die Nennung der betroffenen Objekte ( welche Objekte betroffen sind) erforderlich. In order to define an event, it is at least necessary to state the change in status / status change (what happened) and the objects concerned (which objects are affected).
Üblicherweise liegen Definitionen für „Standardereignisse“ vor, die für Objekte eintreten können.Usually there are definitions for “standard events” that can occur for objects.
Daneben können Ereignisse durch weitere Angaben definiert sein, z.B. wann das Ereignis eintrat, wo das Ereignis eintrat, von wem das Ereignis initiiert / vorgenommen wurde, weshalb das Ereignis eingetreten ist und dergleichen. In addition, events can be defined by further information, e.g. when the event occurred, where the event occurred, by whom the event was initiated / carried out, why the event occurred and the like.
Ein Ereignis weist üblicherweise (wie auch ein Objekt) eine eindeutige Kennung auf, unter der das Ereignis identifizierbar ist. Eine solche Ereigniskennung repräsentiert das jeweilige Ereignis in einem EDV-System. Die Ereigniskennung kann eine Nummer oder ein alphanumerischer Code oder ein Binärcode oder ein Hexadezimalcode oder dergleichen sein. An event (like an object) usually has a unique identifier by which the event can be identified. Such an event identifier represents the respective event in an IT system. The event identifier can be a number or an alphanumeric code or a binary code or a hexadecimal code or the like.
Üblicherweise erfährt ein Objekt mehrere Ereignisse. Dabei folgen die mehreren Ereignisse üblicherweise zeitlich aufeinander. Falls zwei Ereignisse zeitgleich ablaufen, können sie entweder zu einem Ereignis zusammengefasst werden, oder man entscheidet sich für eines der Ereignisse, für das angenommen wird, es sei vor dem anderen Ereignis eingetreten. Wenn ein Objekt mehr als ein Ereignis erfährt, lässt sich jedenfalls eine Ereignishistorie (Ereigniskette) konstruieren. Eine Ereignishistorie ist eine Kette von zeitlich aufeinanderfolgenden Ereignissen. In einer solchen Ereignishistorie gibt es ein Ereignis, das für das jeweilige Objekt zuletzt eingetreten ist. Dieses Ereignis wird in dieser Beschreibung auch als „letztes Ereignis“ oder Jüngstes Ereignis“ bezeichnet. Ferner gibt es in einer solchen Ereignishistorie ein erstes Ereignis. Mit Ausnahme des ersten Ereignisses geht jedem Ereignis der Ereignishistorie genau ein Ereignis unmittelbar voran (bzw. lässt sich wie oben beschrieben eine Ereignishistorie konstruieren, bei der mit Ausnahme des ersten Ereignisses jedem Ereignis genau ein Ereignis unmittelbar vorangeht). Dieses unmittelbar vorangehende bzw. vorangegangene Ereignis wird in dieser Beschreibung auch als Vorgängerereignis (Previous Event) bezeichnet. Dabei bedeutet der Begriff „unmittelbar“, dass gemäß der Ereignishistorie zwischen einem Ereignis und seinem Vorgängerereignis kein weiteres Ereignis für das jeweilige Objekt eingetreten (bzw. erfasst worden) ist.Usually an object experiences several events. The multiple events usually follow one another in time. If two events occur at the same time, they can either be combined into one event, or one can choose one of the events that is assumed to have occurred before the other event. If an object experiences more than one event, an event history (chain of events) can be constructed in any case. An event history is a chain of chronologically consecutive events. In such an event history there is an event that last occurred for the respective object. This event is also referred to in this description as the “last event” or “latest event”. Furthermore, there is a first event in such an event history. With the exception of the first event, each event in the event history is preceded by exactly one event (or, as described above, an event history can be constructed in which, with the exception of the first event, each event is preceded by exactly one event). This immediately preceding or preceding event is also referred to in this description as the previous event. The term “immediately” means that, according to the event history, no further event occurred (or was recorded) for the respective object between an event and its previous event.
Üblicherweise ist die Zahl n der Ereignisse, die für die Vielzahl an Objekten eintreten kann, kleiner als die Zahl der Objekte (n <N). Üblicherweise treten spezifische Ereignisse für mehrere Objekte ein. Von einem Ereignis Ei ist also üblicherweise mehr als ein Objekt betroffen, von einem Ereignis E2 mehr als ein Objekt und so fort. The number n of events that can occur for the large number of objects is usually smaller than the number of objects (n <N). Typically, specific events occur for multiple objects. An event Ei usually affects more than one object, an event E 2 more than one object, and so on.
Die vorliegende Erfindung dient wie oben bereits beschrieben der Verfolgung einer Vielzahl von Objekten. Dabei bedeutet der Begriff „Verfolgung“, dass für die einzelnen Objekte die Ereignishistorie erfasst und festgehalten wird, so dass auf Basis der festgehaltenen Informationen zu jedem Objekt die Ereignishistorie ermittelt (reproduziert) werden kann. As already described above, the present invention is used to track a large number of objects. The term “tracking” means that the event history is recorded and recorded for the individual objects, so that the event history can be determined (reproduced) on the basis of the information recorded for each object.
Gemäß der vorliegenden Erfindung erfolgen das Erfassen und Festhalten der Ereignishistorien von Objekten mit Hilfe von zwei Tabellen, einer ersten Tabelle und einer zweiten Tabelle. Dabei ist der Begriff „Tabelle“ weit auszulegen. Unter dem Begriff „Tabelle“ wird jede geordnete Zusammenstellung von Daten verstanden. According to the present invention, the event histories of objects are recorded and recorded with the aid of two tables, a first table and a second table. The term "table" is to be interpreted broadly. The term “table” is understood to mean any orderly compilation of data.
Eine erste Tabelle umfasst Informationen zu den Objekten, die verfolgt werden. In der ersten Tabelle ist für jedes Objekt, für das mindestens ein Ereignis eingetreten ist, (lediglich) das zuletzt eingetretene Ereignis (das letzte/jüngste Ereignis) eingetragen. In der zweiten Tabelle ist für jedes Ereignis, das für mindestens ein Objekt eingetreten ist und dem mindestens ein Ereignis vorangegangen ist, (lediglich) das unmittelbar vorangegangene Ereignis (das Vorgängerereignis) eingetragen. A first table contains information about the objects that are being tracked. In the first table, (only) the last event (the last / most recent event) is entered for each object for which at least one event has occurred. In the second table, (only) the immediately preceding event (the preceding event) is entered for each event that has occurred for at least one object and which has been preceded by at least one event.
Tritt für eine Zahl N an Objekten ein neues Ereignis E ein, werden die in der ersten Tabelle für die Objekte bereits eingetragenen letzten Ereignisse durch das neue (letzte) Ereignis E ersetzt. Ferner wird in der zweiten Tabelle das neue Ereignis E eingetragen und es wird für das neue Ereignis E eingetragen, welches Ereignis dem Ereignis E unmittelbar vorangegangen ist. Bei jedem neu eintretenden Ereignis kommt somit lediglich ein einziger neuer Eintrag hinzu, während bei der in der Einleitung zu dieser Beschreibung erläuterten bisherigen (klassischen) Vorgehensweise für jedes neue Ereignis genau so viele neue Einträge hinzukommen, wie Objekte von dem Ereignis betroffen sind. Damit kommt die vorliegende Erfindung mit weniger Speicherbedarf für die Verfolgung von Objekten aus als die bisherige Vorgehensweise bei der Verfolgung von Objekten. Ferner ist auch der Datenverkehr zum Austausch von Informationen zu Objekten zwischen verschiedenen Beteiligten geringer. If a new event E occurs for a number N of objects, the last events already entered in the first table for the objects are replaced by the new (last) event E. In addition, the new event E is entered in the second table and for the new event E it is entered which event immediately preceded event E. With each new event that occurs, only a single new entry is added, while with the previous (classic) procedure explained in the introduction to this description, exactly as many new entries are added for each new event as there are objects affected by the event. The present invention thus manages with less memory requirements for tracking objects than the previous procedure for tracking objects. Furthermore, the data traffic for the exchange of information on objects between different participants is also lower.
Soll die Ereignishistorie für ein Objekt in Erfahrung gebracht werden, identifiziert man zunächst in der ersten Tabelle das letzte Ereignis für dieses Objekt. Dann prüft man anhand der zweiten Tabelle, ob dem letzten Ereignis ein Ereignis vorangegangen ist. Falls nicht, besteht die Ereignishistorie nur aus dem letzten Ereignis. Falls für das letzte Ereignis in der zweiten Tabelle ein Vorgängerereignis aufgeführt ist, umfasst die Ereignishistorie zumindest das letzte Ereignis und sein Vorgängerereignis. Nun wird anhand der zweiten Tabelle geprüft, ob das Vorgängerereignis seinerseits ein Vorgängerereignis aufweist. Falls nicht, besteht die Ereigniskette lediglich aus dem letzten Ereignis und seinem Vorgängerereignis. Weist das Vorgängerereignis des letzten Ereignisses hingegen seinerseits ein Vorgängerereignis auf, so umfasst die Ereigniskette zumindest das letzte Ereignis, sein Vorgängerereignis und das Vorgängerereignis des Vorgängerereignisses. Der Prozess des Prüfens, ob es ein weiteres Vorgängerereignis gibt, wird so lange fortgesetzt, bis es kein weiteres Vorgängerereignis mehr gibt. Die Ereignishistorie besteht dann aus dem letztem Ereignis und allen identifizierten V orgängerereignissen . If the event history for an object is to be found out, the last event for this object is first identified in the first table. You then use the second table to check whether an event preceded the last event. If not, the event history only consists of the last event. If a previous event is listed for the last event in the second table, the event history includes at least the last event and its previous event. The second table is now used to check whether the previous event itself has a previous event. If not, the chain of events only consists of the last event and its previous event. If, on the other hand, the preceding event of the last event has a preceding event, the chain of events includes at least the last event, its preceding event and the preceding event of the preceding event. The process of checking whether there is another previous event continues until there is no further previous event. The event history then consists of the last event and all identified previous events.
Die Erfindung wird nachfolgend anhand von Figuren näher erläutert, ohne die Erfindung auf die in den Figuren gezeigten Merkmale und Merkmalskombinationen beschränken zu wollen. The invention is explained in more detail below with reference to figures, without wishing to restrict the invention to the features and combinations of features shown in the figures.
Es zeigen: Fig. 1 zeigt schematisch die Verfolgung von Objekten gemäß der bisherigen (klassischen) Vorgehensweise. Die Figuren 1 (a) bis 1 (d) sind oben bereits detailliert beschrieben worden. They show: FIG. 1 schematically shows the tracking of objects according to the previous (classic) procedure. Figures 1 (a) to 1 (d) have already been described in detail above.
Fig. 2 zeigt schematisch und beispielhaft eine bevorzugte Ausführungsform der vorliegenden Erfindung. Die in Fig. 2 (a) dargestellte Situation schließt zeitlich an die in Fig. 1 (a) gezeigte Situation an. Ausgangspunkt der Erfindung sind die bereits in Fig. 1 (a) dargestellten fünf Objekte Ol, 02, 03, 04 und 05, die durch ihre eindeutigen Kennungen identifizierbar sind. In einem Datenspeicher DB werden Informationen zu den Objekten in Tabellenform anhand der eindeutigen Objektkennungen gesammelt. In Fig. 2 (a) sind zwei Ereignisse El und E2 eingetreten. Ereignis El betrifft die Objekte 01 und 02; Ereignis E2 betrifft die Objekte 03, 04 und 05. In dem Datenspeicher DB wird in einer ersten Tabelle (Tab. 1) hinterlegt, dass für die Objekte 01 und 02 das Ereignis El eingetreten ist und für die Objekte 03, 04 und 05 das Ereignis E2 eingetreten ist. In einer zweiten Tabelle (Tab. 2) wird für jedes stattgefündene Ereignis hinterlegt, welches Ereignis dem jeweiligen Ereignis unmittelbar vorangegangen ist ( Previous Event). Im vorliegenden Fall sind den Ereignissen El und E2 keine Ereignisse vorangegangen. Deswegen ist in der zweiten Tabelle für die Ereignisse El und E2 in dem jeweiligen Feld Previous Event eine Null eingetragen. Denkbar ist auch, dass in der zweiten Tabelle nur diejenigen Ereignisse aufgeführt werden, die ein Vorgängerereignis aufweisen. Da die Ereignisse El und E2 keine Vorgängerereignisse aufweisen, ist es also denkbar, dass die in Fig. 2 (a) gezeigte zweite Tabelle keine Einträge aufweist, also leer ist. Diese Vorgehensweise, in die zweite Tabelle nur diejenigen Ereignisse aufzunehmen, die ein Vorgängerereignis aufweisen, ist für die in den Figuren 2 (b) und (c) gezeigten Szenarien realisiert. Fig. 2 shows schematically and by way of example a preferred embodiment of the present invention. The situation shown in FIG. 2 (a) follows in time the situation shown in FIG. 1 (a). The starting point of the invention are the five objects O1, 02, 03, 04 and 05 already shown in FIG. 1 (a), which can be identified by their unique identifiers. In a data memory DB, information on the objects is collected in table form on the basis of the unique object identifiers. In Fig. 2 (a) two events E1 and E2 have occurred. Event El affects objects 01 and 02; Event E2 relates to objects 03, 04 and 05. A first table (Tab. 1) is stored in the data memory DB that the event El has occurred for objects 01 and 02 and the event for objects 03, 04 and 05 E2 has occurred. In a second table (Tab. 2), for each event that has taken place, it is stored which event immediately preceded the respective event (previous event). In the present case, the events E1 and E2 were not preceded by any events. For this reason, a zero is entered in the second table for the events E1 and E2 in the respective Previous Event field. It is also conceivable that only those events are listed in the second table that have a previous event. Since the events E1 and E2 have no previous events, it is therefore conceivable that the second Table has no entries, so it is empty. This procedure of including only those events in the second table that have a previous event is implemented for the scenarios shown in FIGS. 2 (b) and (c).
In Fig. 2 (b) sind (wie in Fig. 1 (c)) zwei neue Ereignisse eingetreten, E3 und E4, wobei das Ereignis E3 die Objekte Ol und 02 und das Ereignis E4 die Objekte 03 und 04 betrifft. Im Unterschied zu der in Fig. 1 (c) dargestellten Vorgehensweise wird im Fall von Fig. 2 (b) in der ersten Tabelle (Tab. 1) für die Objekte lediglich das zuletzt stattgefündene Ereignis festgehalten (E3 für 01 und 02; E4 für 03 und 04 und E2 für 05). In der zweiten Tabelle (Tab. 2) wird für jedes Ereignis, das ein Vorgängerereignis aufweist, das entsprechende Vorgängerereignis festgehalten (El ist das Vorgängerereignis von E3 und E2 ist das Vorgängerereignis von E4; El und E2 haben ihrerseits keine Vorgängerereignisse). In FIG. 2 (b) (as in FIG. 1 (c)) two new events have occurred, E3 and E4, with event E3 relating to objects O1 and 02 and event E4 relating to objects 03 and 04. In contrast to the procedure shown in FIG. 1 (c), in the case of FIG. 2 (b), only the last event that took place is recorded for the objects in the first table (Tab. 1) (E3 for 01 and 02; E4 for 03 and 04 and E2 for 05). In the second table (Tab. 2) the corresponding previous event is recorded for each event that has a previous event (El is the previous event of E3 and E2 is the previous event of E4; El and E2 in turn have no previous events).
Aus der Kombination der ersten Tabelle und der zweiten Tabelle lässt sich für jedes Objekt die Historie der stattgefündenen Ereignisse ablesen. Dies sei am Beispiel des Objekts 01 erläutert. Das für das Objekt 01 zuletzt stattgefündene Ereignis ist gemäß der ersten Tabelle das Ereignis E3. Gemäß der zweiten Tabelle ist dem Ereignis E3 das Ereignis El vorangegangen. Das Ereignis El ist in der zweiten Tabelle nicht aufgeführt (oder es ist, wie in Bezug zur Fig. 2 (a) beschrieben, in der zweiten Tabelle für das Ereignis El festgehalten, dass es kein Vorgängerereignis aufweist). Dementsprechend lautet die Ereignishistorie für Objekt 01: E1^E3. From the combination of the first table and the second table, the history of the events that have taken place can be read off for each object. This is explained using the example of object 01. According to the first table, the last event that occurred for object 01 is event E3. According to the second table, the event E3 preceded the event E3. The event E1 is not listed in the second table (or, as described in relation to FIG. 2 (a), it is recorded in the second table for the event E1 that it has no preceding event). Accordingly, the event history for object 01 is: E1 ^ E3.
Die in Fig. 2 (b) dargestellte Vorgehensweise bei der Verfolgung von Objekten kommt mit weniger Einträgen in dem Datenspeicher aus als die in Fig. 1 (c) dargestellte Vorgehensweise; im Fall von Fig. 2 (b) liegen 7 Einträge (verteilt auf zwei Tabellen) vor und im Fall von Fig. 1 (c) hegen 9 Einträge vor.The procedure for tracking objects shown in FIG. 2 (b) manages with fewer entries in the data memory than the procedure shown in FIG. 1 (c); in the case of Fig. 2 (b) there are 7 entries (distributed over two tables) and in the case of Fig. 1 (c) there are 9 entries.
In Fig. 2 (c) sind (wie in Fig. 1 (d)) vier neue Ereignisse eingetreten, E5, E6, E7 und E8, wobei das Ereignis E5 die Objekte 01 und 02, das Ereignis E6 das Objekt 03, das Ereignis E7 das Objekt 04 und das Ereignis E8 das Objekt 05 betrifft. In der ersten Tabelle (Tab. 1) wird wiederum für jedes Objekt lediglich dasjenige Ereignis festgehalten, das zuletzt eingetreten ist. Das heißt, dass „neue zuletzt eingetretene Ereignis“ ersetzt das „bisher zuletzt eingetretene Ereignis“. In der zweiten Tabelle (Tab. 2) wird für jedes Ereignis, das ein Vorgängerereignis aufweist, das jeweilige Vorgängerereignis festgehalten. In Fig. 2 (c) (as in Fig. 1 (d)) four new events have occurred, E5, E6, E7 and E8, with the event E5 the objects 01 and 02, the event E6 the object 03, the event E7 relates to object 04 and event E8 relates to object 05. In the first table (Tab. 1), in turn, only the event that occurred last is recorded for each object. This means that the “new, most recently occurred event” replaces the “previously last occurred event”. In the second table (Tab. 2), the respective previous event is recorded for each event that had a previous event.
Aus der Kombination der ersten Tabelle und der zweiten Tabelle lässt sich für jedes Objekt die Historie der stattgefündenen Ereignisse ablesen. Dies sei am Beispiel des Objekts 04 erläutert. Das für das Objekt 04 zuletzt stattgefündene Ereignis ist gemäß der ersten Tabelle das Ereignis E7. Gemäß der zweiten Tabelle ist dem Ereignis E7 das Ereignis E4 vorangegangen. Ferner ist gemäß der zweiten Tabelle dem Ereignis E4 das Ereignis E2 vorangegangen. Das Ereignis E2 ist in der zweiten Tabelle nicht aufgeführt (oder es ist, wie in Bezug zur Fig. 2 (a) beschrieben, in der zweiten Tabelle für das Ereignis E2 festgehalten, dass E2 kein Vorgängerereignis aufweist). Dementsprechend lautet die Ereignishistorie für Objekt 04: E2^E4^E7. From the combination of the first table and the second table, the history of the events that have taken place can be read off for each object. This is explained using the example of object 04. According to the first table, the last event that occurred for object 04 is event E7. According to the second table, event E4 preceded event E7. Furthermore, according to the second table, event E2 preceded event E4. The event E2 is not listed in the second table (or, as described with reference to FIG. 2 (a), it is recorded in the second table for the event E2 that E2 has no preceding event). Accordingly, the event history for object 04 is: E2 ^ E4 ^ E7.
Die in Fig. 2 (c) dargestellte Vorgehensweise bei der Verfolgung von Objekten kommt mit weniger Einträgen aus als die in Fig. 1 (d) dargestellte Vorgehensweise; im Fall von Fig. 2 (c) hegen 11 Einträge (verteilt auf zwei Tabellen) vor und im Fall von Fig. 1 (d) liegen 14 Einträge vor. The procedure for tracking objects shown in FIG. 2 (c) manages with fewer entries than the procedure shown in FIG. 1 (d); in the case of Fig. 2 (c) there are 11 entries (distributed over two tables) and in the case of Fig. 1 (d) there are 14 entries.
Im vorliegenden Beispiel ist der Unterschied bei der Zahl der Einträge vergleichsweise gering (11 Einträge gegenüber 14 Einträgen in Bezug auf die Szenarien der Figuren 2 (c) und 1 (d)). Dies liegt daran, dass die in dem vorliegenden Beispiel aufgeführten Ereignisse nur eine geringe Zahl an Objekten betrafen. Die Ereignisse E6, E7 und E8 betrafen beispielsweise nur jeweils ein einzelnes Objekt. Für den Fall, dass es für jedes Objekt individuelle Ereignisse gibt und es keine zwei (oder mehr) Objekte gibt, die demselben Ereignis unterliegen, sind die Zahlen der Einträge für die in den Figuren 1 (klassisch) und 2 (erfmdungsgemäß) dargestellten Vorgehensweise gleich groß. Üblicherweise betreffen Ereignisse jedoch eine Mehrzahl an Objekten. In diesem Fall sind bei der erfmdungsgemäßen Verfolgung von Objekten weit weniger Einträge in einem Datenspeicher erforderlich als bei der klassischen Vorgehensweise. In the present example, the difference in the number of entries is comparatively small (11 entries compared to 14 entries in relation to the scenarios in FIGS. 2 (c) and 1 (d)). This lies because the events listed in this example only affected a small number of objects. For example, events E6, E7, and E8 each only affected a single object. In the event that there are individual events for each object and there are no two (or more) objects that are subject to the same event, the numbers of the entries for the procedure shown in FIGS. 1 (classic) and 2 (according to the invention) are the same large. Usually, however, events affect a large number of objects. In this case, the tracking of objects according to the invention requires far fewer entries in a data memory than the classic procedure.
In Figur 3 zeigt beispielhaft und schematisch eine weitere Ausführungsform der vorliegenden Erfindung. In Fig. 3 (a) ist für fünf Objekte Ol, 02, 03, 04 und 05 die Ereignishistorie schematisch dargestellt. Die Ereignishistorien sind für die Objekte 01 und 02: E1^E3 für die Objekte 03 und 04: E2^E4 für das Objekt 05: E2. FIG. 3 shows, by way of example and schematically, a further embodiment of the present invention. In Fig. 3 (a) the event history is shown schematically for five objects O1, 02, 03, 04 and 05. The event histories are for objects 01 and 02: E1 ^ E3 for objects 03 and 04: E2 ^ E4 for object 05: E2.
In der ersten Tabelle (Tab. 1) ist entsprechend für die Objekte 01 und 02 festgehalten, dass das letzte Ereignis das Ereignis E3 ist, für die Objekte 03 und 04 festgehalten, dass das letzte Ereignis das Ereignis E4 ist, und für das Objekt 05 festgehalten, dass das letzte Ereignis das Ereignis E2 ist. In the first table (Tab. 1) it is recorded accordingly for objects 01 and 02 that the last event is event E3, for objects 03 and 04 it is recorded that the last event is event E4, and for object 05 noted that the last event is event E2.
In der zweiten Tabelle (Tab. 2) ist entsprechend für Ereignis E3 festgehalten, das sein Vorgängerereignis das Ereignis El ist, und für Ereignis E4 festgehalten, das sein Vorgängerereignis das Ereignis E2 ist. In the second table (Tab. 2) it is recorded accordingly for event E3 that its predecessor event is event E1, and for event E4 it is recorded that its predecessor event is event E2.
Das in Fig. 3 (a) gezeigte Szenario entspricht dem in Fig. 2 (b) gezeigten Szenario. The scenario shown in FIG. 3 (a) corresponds to the scenario shown in FIG. 2 (b).
Das in Fig. 3 (b) gezeigte Szenario schließt zeitlich an das in Fig. 3 (a) gezeigte Szenario an. Es ist neues Ereignis E6 eingetreten. Das Ereignis E6 betrifft die Objekte 02, 03, 04 und 05. Würde man nun, wie bisher beschrieben, für jedes vom Ereignis E6 betroffene Objekt das letzte Ereignis in der ersten Tabelle (Tab. 1) durch das Ereignis E6 ersetzen, und in der zweiten Tabelle (Tab. 2) für das Ereignis E6 sein Vorgängerereignis festhalten, würden sich für das Ereignis E6 drei Vorgängerereignisse ergeben, je nachdem, von welchem Objekt man ausgehen würde. Aus der Kombination der ersten Tabelle und der zweiten Tabelle würde sich auch nicht mehr für jedes Objekt die Ereignishistorie reproduzieren lassen. Der Grund für diese Diskrepanz ist, dass für die Objekte 02, 03, 04 und 05 das gleiche Ereignis eingetreten ist, die Objekte jedoch eine unterschiedliche Ereignishistorie aufweisen. So etwas kann beispielsweise dann passieren, wenn die Ereignisse sehr generisch definiert sind wie beispielsweise das Ereignis „Entgegennahme durch den Kunden“. Um diese Diskrepanz zu unterbinden, können Ereignisse spezifischer definiert werden, um zu verhindern, dass ein Ereignis an verschiedenen Stellen von verschiedenen Ereignishistorien auftrit. The scenario shown in FIG. 3 (b) follows on in time from the scenario shown in FIG. 3 (a). A new event E6 has occurred. The event E6 concerns the objects 02, 03, 04 and 05. If, as previously described, one would now replace the last event in the first table (Tab. 1) with the event E6 for each object affected by the event E6, and in the second table (Tab. 2) record its predecessor event for event E6, there would be three predecessor events for event E6, depending on which object one would assume. The combination of the first table and the second table would also no longer allow the event history to be reproduced for each object. The reason for this discrepancy is that the same event occurred for objects 02, 03, 04 and 05, but the objects have a different event history. Something like this can happen, for example, if the events are defined very generically, such as the event "Receipt by the customer". To avoid this discrepancy, events can be defined more specifically to prevent an event from occurring in different places from different event histories.
Eine bevorzugte Ausführungsform erzeugt hingegen für ein Ereignis, dass für Objekte eintritt, die verschiedene Ereignishistorien aufweisen, verschiedene Ereigniskennungen. Dies ist schematisch und beispielhaft in Fig. 3 (c) dargestellt. Es werden die Informationen empfangen, dass ein Ereignis E6 eingetreten ist, von dem die Objekte 02, 03, 04 und 05 betroffen sind. Es wird nun in einem ersten Schritt anhand der ersten Tabelle (Tab. 1) geprüft, ob alle Objekte, die von dem Ereignis E6 betroffen sind, das gleiche letzte Ereignis aufweisen. Die letzten Ereignisse sind aus Fig. 3 (a) in die erste Tabelle von Fig. 3 (c) übernommen worden. Die Objekte 03 und 04 weisen das gleiche letzte Ereignis auf: E4. Die Objekte 02 und 05 weisen hingegen andere letzte Ereignisse auf: E3 (im Fall von 02) und E2 (im Fall von 05). Da die Objekte, die von dem Ereignis E6 betroffen sind, nicht alle das gleiche letzte Ereignis aufweisen, können die in der ersten Tabelle aufgeführten letzten Ereignisse nicht einfach durch das neue Ereignis E6 ersetzt werden. Stattdessen werden in einem ersten Schritt Gruppen gebildet. Dabei werden so viele Gruppen gebildet, wie unterschiedliche letzte Ereignisse für die betroffenen Objekte vorliegen. Im vorliegenden Fall liegen für die betroffenen Objekte 02, 03, 04 und 05 drei verschiedene letzte Ereignisse vor: E3, E4 und E2. Es werden also drei Gruppen gebildet. Die letzten Ereignisse werden den Gruppen zugeordnet; das heißt, es gibt eine Gruppe, der das letzte Ereignis E3 zugeordnet ist, es gibt eine Gruppe, der das letzte Ereignis E4 zugeordnet ist und es gibt eine Gruppe, der das letzte Ereignis E2 zugeordnet ist. Die Objekte werden den Gruppen zugeordnet. Jedes Objekt wird genau einer Gruppe zugeordnet, und zwar derjenigen Gruppe, der das Ereignis zugeordnet ist, das für das jeweilige Objekt das letzte Ereignis ist. Das Objekt 02 wird der Gruppe zugordnet, der das letzte Ereignis E3 zugeordnet ist. Die Objekte 03 und 04 werden der Gruppe zugeordnet, der das Ereignis E4 zugeordnet ist. Das Objekt 05 wird der Gruppe zugordnet, der das letzte Ereignis E2 zugeordnet ist. In einem nächsten Schritt werden für das neue Ereignis E6 genau so viele Ereigniskennungen erzeugt wie Gruppen vorhanden sind; im vorliegenden Fall drei Ereigniskennungen und zwar die Ereigniskennungen E6a, E6b und E6c. Jede Ereigniskennung wird genau einer Gruppe zugeordnet; dies kann willkürlich geschehen; im vorliegenden Fall wird der Gruppe mit dem Objekt 02 die Ereigniskennung E6a zugeordnet, der Gruppe mit den Objekten 03 und 04 die Ereigniskennung E6b und der Gruppe mit dem Objekt 05 die Ereigniskennung E6c. In einem nächsten Schritt wird in der ersten Tabelle für jedes Objekt das letzte Ereignis aus Fig. 3(a) durch diejenige Ereigniskennung ersetzt, die der Gruppe zugeordnet ist, zu der das jeweilige Objekt gehört. Im vorliegenden Fall ist das letzte Ereignis für Objekt 02 das Ereignis E6a, das letzte Ereignis für die Objekte 03 und 04 das Ereignis E6b und das letzte Ereignis für Objekt 05 das Ereignis E6c. Für 01 ist gemäß der Figur 3 (a) das bisherige letzte Ereignis E3. Für 01 ist gemäß Fig. 3 (c) das neue Ereignis E5 eingetreten. Das Objekt 01 ist das einzige Objekt in Fig. 3 (c), für das das Ereignis E5 eingetreten ist. Dementsprechend wird in der ersten Tabelle für das Objekt 01 das bisherige letzte Ereignis (E3) durch das neue letzte Ereignis (E5) ersetzt. In contrast, a preferred embodiment generates different event identifiers for an event that occurs for objects that have different event histories. This is shown schematically and by way of example in FIG. 3 (c). The information is received that an event E6 has occurred which affects objects 02, 03, 04 and 05. In a first step, the first table (Tab. 1) is used to check whether all objects that are affected by event E6 have the same last event. The last events are from Fig. 3 (a) in the first table from Fig. 3 (c). Objects 03 and 04 have the same last event: E4. Objects 02 and 05, however, have other last events: E3 (in the case of 02) and E2 (in the case of 05). Since the objects affected by event E6 do not all have the same last event, the last events listed in the first table cannot simply be replaced by the new event E6. Instead, the first step is to form groups. As many groups are formed as there are different last events for the objects concerned. In the present case, there are three different last events for the affected objects 02, 03, 04 and 05: E3, E4 and E2. So three groups are formed. The last events are assigned to the groups; that is, there is a group to which the last event E3 is assigned, there is a group to which the last event E4 is assigned, and there is a group to which the last event E2 is assigned. The objects are assigned to the groups. Each object is assigned to exactly one group, namely the group to which the event is assigned, which is the last event for the respective object. Object 02 is assigned to the group to which the last event E3 is assigned. Objects 03 and 04 are assigned to the group to which event E4 is assigned. The object 05 is assigned to the group to which the last event E2 is assigned. In a next step, just as many event IDs are generated for the new event E6 as there are groups; in the present case three event identifiers, namely the event identifiers E6a, E6b and E6c. Each event ID is assigned to exactly one group; this can be done arbitrarily; In the present case, the group with the object 02 is assigned the event ID E6a, the group with the objects 03 and 04 is assigned the event ID E6b and the group with the object 05 is assigned the event ID E6c. In a next step, the last event from FIG. 3 (a) in the first table for each object is replaced by that event identifier which is assigned to the group to which the respective object belongs. In the present case, the last event for object 02 is event E6a, the last event for objects 03 and 04 is event E6b and the last event for object 05 is event E6c. For 01, according to FIG. 3 (a), the previous last event is E3. According to FIG. 3 (c), the new event E5 has occurred for 01. Object 01 is the only object in FIG. 3 (c) for which event E5 has occurred. Accordingly, the previous last event (E3) is replaced by the new last event (E5) in the first table for object 01.
In der zweiten Tabelle wird für alle neu in der ersten Tabelle auftretenden letzten Ereignisse jeweils ein neuer Eintrag angelegt. Für das letzte Ereignis E5 wird festgehalten, dass das Vorgängerereignis das Ereignis E3 ist; für das letzte Ereignis E6a wird festgehalten, dass das Vorgängerereignis das Ereignis E3 ist; für das letzte Ereignis E6b wird festgehalten, dass das Vorgängerereignis das Ereignis E4 ist; für das letzte Ereignis E6c wird festgehalten, dass das Vorgängerereignis das Ereignis E2 ist. In the second table, a new entry is created for each of the last events that occurred in the first table. For the last event E5 it is recorded that the previous event is the event E3; for the last event E6a it is recorded that the previous event is the event E3; for the last event E6b it is recorded that the previous event is the event E4; for the last event E6c it is recorded that the previous event is the event E2.
Fig. 4 zeigt schematisch und beispielhaft eine Ausführungsform der erfindungsgemäßen Vorrichtung. Die Vorrichtung (10) umfasst eine Eingabeeinheit (20), eine Steuer- und Recheneinheit (30), einen Datenspeicher (40) und eine Ausgabeeinheit (50). Fig. 4 shows schematically and by way of example an embodiment of the device according to the invention. The device (10) comprises an input unit (20), a control and computing unit (30), a data memory (40) and an output unit (50).
Über die Eingabeeinheit (20) empfängt die Vorrichtung (10) Informationen zu Ereignissen und den Objekten, die von den Ereignissen betroffen sind. The device (10) receives information about events and the objects that are affected by the events via the input unit (20).
Die Steuer- und Recheneinheit (30) ist konfiguriert, die Informationen zu den Ereignissen und den Objekten zu verwalten, um für jedes Objekt eine Ereignishistorie reproduzieren zu können. Dazu erzeugt und pflegt die Steuer- und Recheneinheit (30) zwei Tabellen, eine erste Tabelle und eine zweite Tabelle. Die Tabellen können in dem Datenspeicher (40) gespeichert werden und/oder über die Ausgabeeinheit (50) gegenüber einer Person angezeigt werden. Der Datenspeicher (40) kann ein integraler Bestandteil der Vorrichtung (10) sein; es ist aber auch denkbar, dass der Datenspeicher (40) als separate Einheit ausgeführt ist, auf die die Steuer- und Recheneinheit (30) beispielsweise über ein Netzwerk zugreifen kann. The control and computing unit (30) is configured to manage the information on the events and the objects in order to be able to reproduce an event history for each object. For this purpose, the control and computing unit (30) generates and maintains two tables, a first table and a second table. The tables can be stored in the data memory (40) and / or displayed to a person via the output unit (50). The data memory (40) can be an integral part of the device (10); but it is also conceivable that the data memory (40) is a separate unit is executed, which the control and computing unit (30) can access, for example via a network.
Die erfindungsgemäße Vorrichtung kann beispielsweise als ein Computersystem ausgeführt sein. Ein "Computersy stem" ist ein System zur elektronischen Datenverarbeitung, das mittels programmierbarer Rechenvorschriften Daten verarbeitet. Ein solches System umfasst üblicherweise einen "Computer", diejenige Einheit, die einen Prozessor zur Durchführung logischer Operationen umfasst, sowie eine Peripherie. The device according to the invention can, for example, be designed as a computer system. A "computer system" is a system for electronic data processing that processes data using programmable arithmetic rules. Such a system usually comprises a "computer", that unit which comprises a processor for performing logical operations, and peripherals.
Als "Peripherie" bezeichnet man in der Computertechnik alle Geräte, die an den Computer angeschlossen sind, und zur Steuerung des Computers und/oder als Ein- und Ausgabegeräte dienen. Beispiele hierfür sind Monitor (Bildschirm), Drucker, Scanner, Maus, Tastatur, Laufwerke, Kamera, Mikrofon, Lautsprecher etc. Auch interne Anschlüsse und Erweiterungskarten gelten in der Computertechnik als Peripherie. In computer technology, "peripherals" are all devices that are connected to the computer and are used to control the computer and / or as input and output devices. Examples of this are monitors (screens), printers, scanners, mice, keyboards, drives, cameras, microphones, loudspeakers, etc. Internal connections and expansion cards are also considered peripherals in computer technology.
Computersysteme von heute werden häufig in Desktop-PCs, Portable PCs, Laptops, Notebooks, Netbooks und Tablet-PCs und so genannte Handheids (z.B. Smartphone) unterteilt; alle diese Geräte können zur Ausführung der Erfindung genutzt werden. Today's computer systems are often divided into desktop PCs, portable PCs, laptops, notebooks, netbooks and tablet PCs and so-called handheids (e.g. smartphones); all of these devices can be used to practice the invention.
Die Eingaben in den Computer erfolgen über Eingabemittel wie beispielsweise eine Tastatur, eine Maus, ein Mikrofon, ein Netzwerkanschluss, ein externer Datenspeicher und/oder dergleichen. Als Eingabe soll auch die Auswahl eines Eintrags aus einem virtuellen Menü oder einer virtuellen Liste oder das Anklicken eines Auswahlkästchens und dergleichen verstanden werden. Ausgaben erfolgen üblicherweise über einen Bildschirm (Monitor), auf einem Drucker, über Lautsprecher und/oder durch Speicherung auf einem Datenspeicher. The inputs into the computer are made via input means such as a keyboard, a mouse, a microphone, a network connection, an external data memory and / or the like. The selection of an entry from a virtual menu or a virtual list or the clicking of a selection box and the like should also be understood as input. Outputs usually take place via a screen (monitor), on a printer, via loudspeakers and / or by storage on a data memory.
Fig. 5 zeigt schematisch in einem Ablaufdiagramm diejenigen Schritte, die ein Computersystem in einer bevorzugten Ausführungsform der vorliegenden Erfindung ausführt, wenn das erfindungsgemäße Computersystem in einem Arbeitsspeicher des Computersystems geladen ist und ausgeführt wird.FIG. 5 shows schematically in a flowchart those steps which a computer system carries out in a preferred embodiment of the present invention when the computer system according to the invention is loaded in a main memory of the computer system and is being carried out.
In einem ersten Schritt (100) empfängt das Computersystem Informationen zu einem Ereignis E und zu einem oder mehreren Objekten O, die von dem Ereignis betroffen sind. Üblicherweise empfängt es die Ereigniskennung von dem Ereignis, das eingetreten ist, und eine Liste von Objektkennungen deijenigen Objekte, die von dem Ereignis betroffen sind. In a first step (100), the computer system receives information on an event E and on one or more objects O that are affected by the event. It usually receives the event ID of the event that has occurred and a list of object IDs of those objects that are affected by the event.
In einem weiteren Schritt (110) wird geprüft, ob das Ereignis nur ein einziges Objekt betrifft (|0| = 1?). Für den Fall, dass nur ein einziges Objekt betroffen ist (Schritt (110): „y“), wird in einem weiteren Schritt (120) anhand einer ersten Tabelle (Tab. 1) geprüft, ob für das Objekt bereits ein Ereignis eingetreten ist (LE?). Wenn die erste Tabelle für das Objekt einen Eintrag für ein letztes Ereignis (LE) enthält, ist bereits ein Ereignis eingetreten. Ist für das Objekt bisher kein Ereignis eingetreten (Schritt (120): „n“), wird in einem weiteren Schritt (130) für das Objekt in der ersten Tabelle festgehalten, dass das letzte Ereignis, von dem das Objekt betroffen ist, das Ereignis E ist (E = LE for O). Gibt es ein bereits ein Ereignis für das Objekt in der ersten Tabelle (Schritt (120): „y“), wird in einer zweiten Tabelle (Tab. 2) festgehalten, dass dieses Ereignis (LE) das Vorgängerereignis (PE) von dem Ereignis E ist (LE = PE of E). In einem weiteren Schritt (130) wird für das Objekt in der ersten Tabelle festgehalten, dass das Ereignis E nun das letzte Ereignis (LE) des Objekts O ist (E = LE for O). Das bisherige letzte Ereignis wird also durch das neue letzte Ereignis ersetzt. Die aktualisierten Tabellen (Tab. 1 und/oder Tab. 2) werden in einem weiteren Schritt (150) in einem Datenspeicher gespeichert (DB: Tab. 1, Tab.2).In a further step (110) it is checked whether the event only affects a single object (| 0 | = 1?). In the event that only a single object is affected (step (110): “y”), a further step (120) uses a first table (Tab. 1) to check whether an event has already occurred for the object (LE?). If the first table for the object contains an entry for a final event (LE), an event has already occurred. If no event has so far occurred for the object (step (120): “n”), it is recorded in a further step (130) for the object in the first table that the last event that affected the object was the event E is (E = LE for O). If there is already an event for the object in the first table (step (120): “y”), it is recorded in a second table (Table 2) that this event (LE) is the previous event (PE) of the event E is (LE = PE of E). In a further step (130) it is recorded for the object in the first table that the event E is now the last event (LE) of the object O (E = LE for O). The previous last event is thus replaced by the new last event. The updated tables (Tab. 1 and / or Tab. 2) are saved in a further step (150) in a data memory (DB: Tab. 1, Tab. 2).
Für den Fall, dass es mehrere Objekte gibt, die von dem Ereignis E betroffen sind (Schritt (110): „n“), wird in einem weiteren Schritt (160) anhand der ersten Tabelle (Tab. 1) geprüft, welche Objekte, die von dem Ereignis E betroffen sind, bereits ein Ereignis aufweisen (LE F 0), und welche Objekte, die von dem Ereignis E betroffen sind, kein Ereignis aufweisen (LE = 0). Für all diejenigen Objekte, die bisher kein Ereignis aufweisen (LE = 0), wird der Schritt (130) durchgeführt, d.h. es wird in der ersten Tabelle (Tab. 1) festgehalten, dass das Ereignis E das letzte Ereignis für das jeweilige Objekt ist und anschließend wird die erste Tabelle in dem Datenspeicher gespeichert (Schritt (150)). Für alle Objekte, die bereits ein Ereignis aufweisen (LE F 0), wird in einem weiteren Schritt (170) geprüft, ob sie alle das gleiche letzte Ereignis aufweisen (same LE?). Für den Fall, dass alle Objekte das gleiche letzte Ereignis aufweisen („y“), werden die Schritte (140) und (150) für jedes einzelne Objekt durchgeführt, das heißt, in der zweiten Tabelle (Tab. 2) wird festgehalten, dass das letzte Ereignis das Vorgängerereignis des Ereignis E ist, und in der ersten Tabelle (Tab. 1) wird festgehalten, dass das Ereignis E das letzte Ereignis für das jeweilige Objekt ist. Anschließend werden die aktualisierten Tabellen (Tab.l und Tab. 2) in dem Datenspeicher gespeichert (Schritt (150)). Für den Fall, dass ein oder mehrere Objekte verschiedene letzte Ereignisse aufweisen (Schritt (170): „n“), werden in einem weiteren Schritt (180) Gruppen gebildet und die Objekte den Gruppen anhand der letzten Ereignisse zugeordnet („grouping“). Haben zwei Objekte das gleiche letzte Ereignis, werden sie derselben Gruppe zugeordnet. Es gibt so viele Gruppen, wie es verschiedene letzte Ereignisse gibt. In einem weiteren Schritt (190) werden neue Ereigniskennungen für das Ereignis E erzeugt („event ID creation“). Es werden so viele Ereigniskennungen erzeugt, wie es Gruppen gibt. In einem weitern Schritt (200) werden die erzeugten Ereigniskennungen den Gruppen zugeordnet („assignment“); dies kann willkürlich geschehen; jeder Gruppe wird eine Ereigniskennung zugeordnet. Durch die Gruppenzugehörigkeit ist auch jedem Objekt damit eine Ereigniskennung zugeordnet. In einem weiteren Schritt (210) wird anhand der ersten Tabelle (Tab. 1) für die einzelnen Objekte geprüft, welches letzte Ereignis für sie in der ersten Tabelle festgehalten ist („which LE?“). Das jeweilige letzte Ereignis ist das Vorgängerereignis für die erzeugte Ereigniskennung, die dem Objekt zugeordnet ist. In einem weiteren Schritt (220) wird in der zweiten Tabelle für jede erzeugte Ereigniskennung das entsprechende Vorgängerereignis festgehalten. In einem weiteren Schritt (230) wird für jedes Objekt in der ersten Tabelle das bisherige letzte Ereignis durch die dem Objekt zugeordnete erzeugte Ereigniskennung ersetzt. In einem weiteren Schritt (150) werden die aktualisierten Tabellen (Tab.l und Tab. 2) werden in dem Datenspeicher gespeichert In the event that there are several objects that are affected by event E (step (110): "n"), in a further step (160) it is checked on the basis of the first table (Tab. 1) which objects, the are affected by event E, already have an event (LE F 0), and which objects that are affected by event E do not have an event (LE = 0). Step (130) is carried out for all those objects that have so far not had an event (LE = 0), ie it is recorded in the first table (Tab. 1) that the event E is the last event for the respective object and then the first table is stored in the data memory (step (150)). For all objects that already have an event (LE F 0), a further step (170) checks whether they all have the same last event (same LE?). In the event that all objects have the same last event (“y”), steps (140) and (150) are carried out for each individual object, that is, in the second table (Tab. 2) it is recorded that the last event is the previous event of event E, and in the first table (Tab. 1) it is recorded that event E is the last event for the respective object. The updated tables (Table 1 and Table 2) are then stored in the data memory (step (150)). In the event that one or more objects have different last events (step (170): “n”), groups are formed in a further step (180) and the objects are assigned to the groups on the basis of the last events (“grouping”). If two objects have the same last event, they are assigned to the same group. There are as many groups as there are different final events. In a further step (190), new event IDs are generated for event E (“event ID creation”). As many event IDs are generated as there are groups. In a further step (200), the generated event IDs are assigned to the groups (“assignment”); this can be done arbitrarily; an event identifier is assigned to each group. As a result of the group membership, an event identifier is also assigned to each object. In a further step (210), the first table (Tab. 1) is used to check for the individual objects which last event is recorded for them in the first table (“which LE?”). The respective last event is the previous event for the generated event identifier that is assigned to the object. In a further step (220), the corresponding preceding event is recorded in the second table for each generated event identifier. In a further step (230), for each object in the first table, the previous last event is replaced by the generated event identifier assigned to the object. In a further step (150) the updated tables (Table 1 and Table 2) are stored in the data memory

Claims

Patentansprüche Claims
1. Verfahren zur Verfolgung von Objekten, umfassend die Schritte: 1. A method for tracking objects, comprising the steps:
Bereitstellen einer Vielzahl von Objekten Providing a variety of objects
Erfassen von Ereignissen, die für die Objekte eingetreten sind, und Capturing events that occurred for the objects, and
Ablegen von Informationen zu den Objekten und zu den eingetretenen Ereignissen in einer ersten Tabelle und in einer zweiten Tabelle wobei in der ersten Tabelle jedes Objekt durch eine eindeutige Objektkennung repräsentiert wird, wobei in der ersten Tabelle für jedes Objekt dasjenige Ereignis abgelegt wird, das für das jeweilige Objekt zuletzt eingetreten ist, wobei in der zweiten Tabelle für jedes Ereignis, dem ein Ereignis unmittelbar vorangegangen ist, das jeweilige vorangegangene Ereignis eingetragen wird. Filing of information on the objects and the events that have occurred in a first table and in a second table, each object being represented by a unique object identifier in the first table, with the event that is stored for each object in the first table for each object respective object occurred last, with the respective previous event being entered in the second table for each event immediately preceding an event.
2. Verfahren gemäß Anspruch 1 umfassend die Schritte: 2. The method according to claim 1, comprising the steps of:
Empfangen von Objektkennungen einer Vielzahl von Objekten, Receiving object IDs for a large number of objects,
Erzeugen einer ersten Tabelle, wobei jedes Objekt in der ersten Tabelle durch die jeweilige Objektkennung repräsentiert wird, Creation of a first table, with each object in the first table being represented by the respective object identifier,
Empfangen von Informationen über Ereignisse und über diejenigen Objekte, für die die jeweiligen Ereignisse eingetreten sind, für alle Objekte, für die mindestens ein Ereignis eingetreten ist: Einträgen des jeweils zuletzt eingetretenen Ereignisses in die ersten Tabelle, Receipt of information about events and about those objects for which the respective events occurred, for all objects for which at least one event occurred: Entries of the last event that occurred in the first table,
Erzeugen einer zweiten Tabelle, für jedes Ereignis, das für mindestens ein Objekt eingetreten ist und dem mindestens ein Ereignis vorangegangen ist: Einträgen des unmittelbar vorangegangenen Ereignisses in die zweite Tabelle, Generating a second table for each event that occurred for at least one object and which was preceded by at least one event: Entries of the immediately preceding event in the second table,
Speichern der ersten Tabelle und der zweiten Tabelle in einem Datenspeicher. Storing the first table and the second table in a data store.
3. Verfahren gemäß einem der Ansprüche 1 oder 2, umfassend die Schritte: 3. The method according to any one of claims 1 or 2, comprising the steps:
Empfangen von Informationen über ein Ereignis E und über diejenigen Objekte, für die das Ereignis E eingetreten ist, für alle Objekte, für die das Ereignis E eingetreten ist: Ersetzten des jeweiligen letzten Ereignisses LE durch das Ereignis E in der ersten Tabelle, und Receiving information about an event E and about those objects for which the event E has occurred, for all objects for which the event E has occurred: replacing the respective last event LE with the event E in the first table, and
Erzeugen eines neuen Eintrags in der zweiten Tabelle, wobei für das Ereignis E festgehalten wird, dass das Vorgängerereignis des Ereignisses E das Ereignis LE ist. Creation of a new entry in the second table, whereby it is recorded for the event E that the preceding event of the event E is the event LE.
4. Verfahren gemäß einem der Ansprüche 1 bis 3 umfassend die Schritte: 4. The method according to any one of claims 1 to 3, comprising the steps:
Empfangen von Informationen über ein Ereignis E und über diejenigen Objekte, für die das Ereignis E eingetreten ist, Receiving information about an event E and about those objects for which the event E occurred,
Prüfen anhand der ersten Tabelle, ob für alle Objekte, für die das Ereignis E eingetreten ist, das gleiche letzte Ereignis LE eingetreten ist, für den Fall, dass für alle Objekte, für die das Ereignis E eingetreten ist, das gleiche letzte Ereignis LE eingetreten ist: o für alle Objekte, für die das Ereignis E eingetreten ist: Ersetzten des letzten Ereignisses LE durch das Ereignis E in der ersten Tabelle, und o Erzeugen eines neuen Eintrags in der zweiten Tabelle, wobei für das Ereignis E festgehalten wird, dass das Vorgängerereignis des Ereignisses E das Ereignis LE ist, für den Fall, dass nicht für alle Objekte, für die das Ereignis E eingetreten ist, das gleiche letzte Ereignis LE eingetreten ist: o Bilden von Gruppen für alle Objekte, für die das Ereignis E eingetreten ist, wobei jede Gruppe diejenigen Objekte umfasst, die das gleiche letzte Ereignis aufweisen, o Erzeugen von so vielen neuen Ereigniskennungen für das Ereignis E wie Gruppen gebildet wurden, o für jede Gruppe: Zuordnen einer neuen Ereigniskennung zu einer Gruppe o für alle Objekte, für die das Ereignis E eingetreten ist: Ersetzen des jeweils letzten Ereignisses in der ersten Tabelle durch die neue Ereigniskennung, die der Gruppe, zu der das Objekt gehört, zugeordnet wurde, o für jede neue Ereigniskennung: Erzeugen eines neuen Eintrags in der zweiten Tabelle, wobei für die neue Ereigniskennung als Vorgängerereignis festgehalten wird, welches letzte Ereignis es in der ersten Tabelle ersetzt hat. Using the first table, check whether the same last event LE occurred for all objects for which event E occurred, in the event that the same last event LE occurred for all objects for which event E occurred is: o for all objects for which event E has occurred: replacement of the last event LE with event E in the first table, and o creation of a new entry in the second table, whereby for event E it is noted that the The previous event of event E is event LE, in the event that the same last event LE has not occurred for all objects for which event E has occurred: o Formation of groups for all objects for which event E has occurred , whereby each group comprises those objects which have the same last event, o generation of as many new event IDs for the event E as groups were formed, o for each group: assign en a new event ID for a group o for all objects for which event E has occurred: Replace the last event in the first table with the new event ID assigned to the group to which the object belongs, o for each New event identifier: Creation of a new entry in the second table, with the previous event being recorded for the new event identifier which last event it replaced in the first table.
5. Verfahren gemäß einem der Ansprüche 1 bis 4, wobei es sich bei den Objekten zumindest teilweise um körperliche Gegenstände, vorzugsweise Waren handelt. 5. The method according to any one of claims 1 to 4, wherein the objects are at least partially physical objects, preferably goods.
6. Verfahren gemäß Anspruch 5, wobei Objekte, die körperliche Gegenstände sind, jeweils eine eindeutige Objektkennung tragen. 6. The method according to claim 5, wherein objects that are physical objects each carry a unique object identifier.
7. Verfahren gemäß einem der Ansprüche 1 bis 6, ferner umfassend den Schritt: Anzeigen der ersten und/oder der zweiten Tabelle gegenüber einer Person vorzugsweise auf einem Bildschirm. 7. The method according to any one of claims 1 to 6, further comprising the step of: displaying the first and / or the second table to a person, preferably on a screen.
8. Verfahren gemäß einem der Ansprüche 1 bis 7, ferner umfassend die Schritte: 8. The method according to any one of claims 1 to 7, further comprising the steps:
Reproduzieren einer Ereignishistorie für ein Objekt, umfassend die Teilschritte: (a) Ermitteln des letzten Ereignisses für das Objekt anhand der ersten Tabelle Reproducing an event history for an object, comprising the substeps: (a) Determine the last event for the object from the first table
(b) Ermitteln anhand der zweiten Tabelle, ob es für das letzte Ereignis ein Vorgängerereignis gibt(b) Using the second table to determine whether there is a previous event for the last event
(c) für den Fall, dass es kein Vorgängerereignis gibt: Erzeugen der Ereignishistorie, wobei die Ereignishistorie nur das letzte Ereignis umfasst (c) in the event that there is no previous event: generating the event history, the event history only including the last event
(d) für den Fall, dass es ein Vorgängerereignis gibt: (d) in the event that there is a previous event:
(i) Prüfen anhand der zweiten Tabelle, ob das Vorgängerereignis seinerseits ein Vorgängerereignis aufweist, (i) Check using the second table whether the previous event itself has a previous event,
(ii) Wiederholen des Teilschritts (i) bis kein weiteres Vorgängerereignis für ein Vorgängerereignis mehr gefunden wird, (ii) Repeat sub-step (i) until no further previous event is found for a previous event,
(iii) Erzeugen der Ereignishistorie, wobei die Ereignishistorie das letzte Ereignis und die Vorgängerereignisse in der Reihenfolge umfasst, in der sie gefunden wurden,(iii) generating the event history, the event history comprising the last event and the previous events in the order in which they were found,
Ausgeben der Ereignishistorie gegenüber einer Person. Output of the event history to a person.
9. Vorrichtung umfassend 9. Device comprising
- eine Eingabeeinheit - an input unit
- eine Steuer- und Recheneinheit und - a control and computing unit and
- einen Datenspeicher wobei die Steuer- und Recheneinheit konfiguriert ist, die Eingabeeinheit zu veranlassen, Objektkennungen einer Vielzahl von Objekten zu empfangen, wobei die Steuer- und Recheneinheit konfiguriert ist, eine erste Tabelle zu erzeugen, wobei jedes Objekt in der ersten Tabelle durch die jeweilige Objektkennung repräsentiert wird, wobei die Steuer- und Recheneinheit konfiguriert ist, die Eingabeeinheit zu veranlassen, Informationen über Ereignisse und über diejenigen Objekte, für die die jeweiligen Ereignisse eingetreten sind, zu empfangen, wobei die Steuer- und Recheneinheit konfiguriert ist, in der ersten Tabelle für die Objekte festzuhalten, welches Ereignis jeweils zuletzt eingetreten ist, wobei die Steuer- und Recheneinheit konfiguriert ist, eine zweite Tabelle zu erzeugen und in der zweiten Tabelle für jedes Ereignis, dem ein Ereignis vorangegangen ist, das unmittelbar vorangegangene Ereignis festzuhalten, wobei die Steuer- und Recheneinheit konfiguriert ist, die erste Tabelle und die zweite Tabelle in dem Datenspeicher zu speichern. a data memory, wherein the control and computing unit is configured to cause the input unit to receive object identifiers of a plurality of objects, wherein the control and computing unit is configured to generate a first table, each object in the first table by the respective one Object identifier is represented, wherein the control and processing unit is configured to cause the input unit to receive information about events and about those objects for which the respective events have occurred, wherein the control and processing unit is configured in the first table to record for the objects which event occurred last, the control and processing unit being configured to generate a second table and to record the immediately preceding event in the second table for each event that was preceded by an event, whereby the control - and processing unit is configured, the store the first table and the second table in the data store.
10. Computerprogrammprodukt umfassend einen Programmcode, der auf einem Datenträger gespeichert ist, und der ein Computersystem dazu veranlasst, die folgenden Schritte auszuführen, wenn der Programmcode in den Arbeitsspeicher des Computersystems geladen ist: 10. Computer program product comprising a program code which is stored on a data carrier and which causes a computer system to carry out the following steps when the program code is loaded into the main memory of the computer system:
Empfangen von Objektkennungen einer Vielzahl von Objekten, Receiving object IDs for a large number of objects,
Erzeugen einer ersten Tabelle, wobei jedes Objekt in der ersten Tabelle durch die jeweilige Objektkennung repräsentiert wird, Empfangen von Informationen über Ereignisse und über diejenigen Objekte, für die die jeweiligen Ereignisse eingetreten sind, für alle Objekte, für die mindestens ein Ereignis eingetreten ist: Einträgen des jeweils zuletzt eingetretenen Ereignisses in die ersten Tabelle, Creation of a first table, with each object in the first table being represented by the respective object identifier, Receipt of information about events and about those objects for which the respective events occurred, for all objects for which at least one event occurred: Entries of the last event that occurred in the first table,
Erzeugen einer zweiten Tabelle, für jedes Ereignis, das für mindestens ein Objekt eingetreten ist und dem mindestens ein Ereignis vorangegangen ist: Einträgen des unmittelbar vorangegangenen Ereignisses in die zweite Tabelle, Generating a second table for each event that occurred for at least one object and which was preceded by at least one event: Entries of the immediately preceding event in the second table,
Speichern der ersten Tabelle und der zweiten Tabelle in einem Datenspeicher. Storing the first table and the second table in a data store.
11. Computerprogrammprodukt gemäß Anspruch 10, wobei der Programmcode ein Computersystem dazu veranlasst, die in einem der Ansprüche 1 bis 8 genannten Schritte auszuführen. 11. Computer program product according to claim 10, wherein the program code causes a computer system to carry out the steps mentioned in one of claims 1 to 8.
EP20757612.5A 2019-08-29 2020-08-24 Tracking of objects Withdrawn EP4022542A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP19194253.1A EP3786866A1 (en) 2019-08-29 2019-08-29 Tracking of products
PCT/EP2020/073588 WO2021037775A1 (en) 2019-08-29 2020-08-24 Tracking of objects

Publications (1)

Publication Number Publication Date
EP4022542A1 true EP4022542A1 (en) 2022-07-06

Family

ID=67810389

Family Applications (2)

Application Number Title Priority Date Filing Date
EP19194253.1A Withdrawn EP3786866A1 (en) 2019-08-29 2019-08-29 Tracking of products
EP20757612.5A Withdrawn EP4022542A1 (en) 2019-08-29 2020-08-24 Tracking of objects

Family Applications Before (1)

Application Number Title Priority Date Filing Date
EP19194253.1A Withdrawn EP3786866A1 (en) 2019-08-29 2019-08-29 Tracking of products

Country Status (3)

Country Link
US (1) US20220277262A1 (en)
EP (2) EP3786866A1 (en)
WO (1) WO2021037775A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8010887B2 (en) * 2001-09-21 2011-08-30 International Business Machines Corporation Implementing versioning support for data using a two-table approach that maximizes database efficiency
US7621447B1 (en) * 2003-01-31 2009-11-24 Massachusetts Institute Of Technology Method and apparatus for routing data in an automatic identification system
US20100127871A1 (en) * 2008-11-26 2010-05-27 Pontin Srl System and method for verification of shipped products using rfid tags
US8782023B1 (en) * 2012-01-26 2014-07-15 Google Inc. Versioned database cache
CA3031722A1 (en) 2016-07-26 2018-02-01 Bayer Business Services Gmbh Synchronization of hierarchical data

Also Published As

Publication number Publication date
EP3786866A1 (en) 2021-03-03
WO2021037775A1 (en) 2021-03-04
US20220277262A1 (en) 2022-09-01

Similar Documents

Publication Publication Date Title
EP1151399B1 (en) Integration of heterogeneous database systems
DE68924525T2 (en) Community object status indicator.
WO2000079408A2 (en) Method for data care in a network of partially replicated database systems
WO2018019720A1 (en) Synchronization of hierarchical data
DE102012001406A1 (en) Automatic configuration of a product data management system
DE202014005278U1 (en) Embed archived data in a data source
EP4022542A1 (en) Tracking of objects
DE102014207874A1 (en) Method for the automated creation of a data record characterizing a technical drawing
EP3901713A1 (en) Method and device for operating a technical system with optimal model
EP2014810B1 (en) Method for manufacturing goods batch cards
DE112010003922T5 (en) Reduce overhead in application processing
DE19539477A1 (en) Process for automated, optimal redundancy design of measurements for control technology in power plants
DE102018128498A1 (en) Component tracking procedures
DE102011110132B4 (en) Method for automatic identification of missing or unread goods of a charging unit
EP4033211B1 (en) Protection and documentation of a manufacturing process of raw materials for drug production
EP4154692B1 (en) Method and device for populating circuit boards by means of fixedly assigned components on at least two assembly lines
AT223849B (en) Circuit arrangement for determining the devices or components to be manufactured in a company
EP3855375A1 (en) Identifying bottlenecks in schedules
EP1577806B1 (en) Object filter for organising the distribution of postal items
DE10064030A1 (en) Method and device for processing a physical object, computer program element and computer-readable storage medium
DE10211719A1 (en) Method and device for picking goods
DE112019005456T5 (en) READER / WRITER, CONTROL PROCEDURE FOR A READER / WRITER, AND PROGRAM
DE102018203957A1 (en) Method for storing a sequence of data records in a database and cooking recipe tool with a storage unit for a database
EP3651101A1 (en) Device and method for dynamically assigning identification information for a configuration of a product configuration system
DE102016215796A1 (en) Allocation unit and method for assigning object data to an object identifier

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20220329

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20230905