Systems and methods for supply chain management
First Claim
Patent Images
1. A method comprising:
- receiving, by a computer-based system and based on scanning at a first location, data for an aggregation event associated with an item at the first location;
wherein the first location impacts the scanning of the data that is obtained by a proximity-based scanner at the first location,wherein the proximity-based scanner scans a parent electronic product code (EPC) and a child EPC at the first location,wherein the proximity-based scanner communicates with the computer-based system;
storing, by the computer-based system, the data for the aggregation event in a database as ungrouped data elements formatted as a block of binary (BLOB);
tuning, by the computer-based system, the database to optimize database performance,wherein the tuning includes placing frequently used files on separate file systems to reduce in and out bottlenecks;
obtaining, by the computer-based system, the data from the database for the aggregation event;
in response to the parent EPC at the first location not being known, storing, by the computer-based system, the parent EPC in storage;
associating, by the computer-based system, the aggregation event with the parent EPC at the first location;
determining, by the computer-based system, that an event sequence exists for the parent EPC at the first location;
in response to the event sequence not existing, initiating, by the computer-based system, an event sequence for the parent EPC at the first location;
in response to the child EPC not being known, storing, by the computer-based system, the child EPC in storage;
associating, by the computer-based system, the aggregation event with the child EPC at the first location;
in response to a decommissioning event existing earlier in the event sequence, setting, by the computer-based system, a parent EPC state to a condition reflecting error,wherein the decommissioning event is issued in response to at least one of destruction of an unconsumed item, an expired item, a damaged item, a recalled item, an item being dispensed, an item being consumed or an item being discarded;
in response to the parent EPC being not reusable, checking, by the computer-based system, for disaggregation events earlier in the event sequence than the current aggregation event;
in response to a disaggregation event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error;
in response to the parent EPC being not reusable, checking, by the computer-based system, for at least one of shipping or receiving events earlier in the event sequence than the current aggregation event;
in response to the at least one of shipping or receiving event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error;
in response to the parent EPC being not reusable, checking, by the computer-based system, that there is only one commissioning event earlier in the event sequence than the current aggregation event,wherein the commissioning event includes identifying at least one of a sellable item, a container associated with the item or aggregation hierarchies for the item;
in response to more than one commissioning event, setting, by the computer-based system, the parent EPC state to a condition reflecting error;
in response to the parent EPC event sequence having events subsequent in time to the current aggregation event, associating, by the computer-based system, each of the subsequent events for the parent EPC with each of the child EPCs listed in the aggregation event, wherein the subsequent events are applied recursively through a parent and child containment hierarchy; and
in response to beginning the event sequence with the aggregation event, setting, by the computer-based system, at least one of a child EPC state or the parent EPC state to indicate a missing commissioning event.
12 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are directed to supply chain management. In particular, the tracking, tracing, authenticating, and reporting of supply chain events for products, is disclosed. Various embodiments can store, analyze, and track supply chain events and help to coordinate and maintain trading partner connections. Various embodiments also help to enhance patient safety, secure the supply chains for pharmaceuticals, medical devices, and other healthcare products, and help users to follow regulatory requirements.
254 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a computer-based system and based on scanning at a first location, data for an aggregation event associated with an item at the first location; wherein the first location impacts the scanning of the data that is obtained by a proximity-based scanner at the first location, wherein the proximity-based scanner scans a parent electronic product code (EPC) and a child EPC at the first location, wherein the proximity-based scanner communicates with the computer-based system; storing, by the computer-based system, the data for the aggregation event in a database as ungrouped data elements formatted as a block of binary (BLOB); tuning, by the computer-based system, the database to optimize database performance, wherein the tuning includes placing frequently used files on separate file systems to reduce in and out bottlenecks; obtaining, by the computer-based system, the data from the database for the aggregation event; in response to the parent EPC at the first location not being known, storing, by the computer-based system, the parent EPC in storage; associating, by the computer-based system, the aggregation event with the parent EPC at the first location; determining, by the computer-based system, that an event sequence exists for the parent EPC at the first location; in response to the event sequence not existing, initiating, by the computer-based system, an event sequence for the parent EPC at the first location; in response to the child EPC not being known, storing, by the computer-based system, the child EPC in storage; associating, by the computer-based system, the aggregation event with the child EPC at the first location; in response to a decommissioning event existing earlier in the event sequence, setting, by the computer-based system, a parent EPC state to a condition reflecting error, wherein the decommissioning event is issued in response to at least one of destruction of an unconsumed item, an expired item, a damaged item, a recalled item, an item being dispensed, an item being consumed or an item being discarded; in response to the parent EPC being not reusable, checking, by the computer-based system, for disaggregation events earlier in the event sequence than the current aggregation event; in response to a disaggregation event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the computer-based system, for at least one of shipping or receiving events earlier in the event sequence than the current aggregation event; in response to the at least one of shipping or receiving event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the computer-based system, that there is only one commissioning event earlier in the event sequence than the current aggregation event, wherein the commissioning event includes identifying at least one of a sellable item, a container associated with the item or aggregation hierarchies for the item; in response to more than one commissioning event, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC event sequence having events subsequent in time to the current aggregation event, associating, by the computer-based system, each of the subsequent events for the parent EPC with each of the child EPCs listed in the aggregation event, wherein the subsequent events are applied recursively through a parent and child containment hierarchy; and in response to beginning the event sequence with the aggregation event, setting, by the computer-based system, at least one of a child EPC state or the parent EPC state to indicate a missing commissioning event. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A tangible non-transitory computer-readable memory having instructions stored thereon that, in response to execution by a computer-based system, cause the computer-based system to perform operations comprising:
-
receiving, by the computer-based system and based on scanning at a first location, data for an aggregation event associated with an item at the first location; wherein the first location impacts the scanning of the data that is obtained by a proximity-based scanner at the first location, wherein the proximity-based scanner scans a parent electronic product code (EPC) and a child EPC at the first location, wherein the proximity-based scanner communicates with the computer-based system; storing, by the computer-based system, the data for the aggregation event in a database as ungrouped data elements formatted as a block of binary (BLOB); tuning, by the computer-based system, the database to optimize database performance, wherein the tuning includes placing frequently used files on separate file systems to reduce in and out bottlenecks; and obtaining, by the computer-based system, the data from the database for the aggregation event; in response to the parent EPC at the first location not being known, storing, by the computer-based system, the parent EPC in storage; associating, by the computer-based system, the aggregation event with the parent EPC at the first location; determining, by the computer-based system, that an event sequence exists for the parent EPC at the first location; in response to the event sequence not existing, initiating, by the computer-based system, an event sequence for the parent EPC at the first location; in response to the child EPC not being known, storing, by the computer-based system, the child EPC in storage; associating, by the computer-based system, the aggregation event with the child EPC at the first location; in response to a decommissioning event existing earlier in the event sequence, setting, by the computer-based system, a parent EPC state to a condition reflecting error, wherein the decommissioning event is issued in response to at least one of destruction of an unconsumed item, an expired item, a damaged item, a recalled item, an item being dispensed, an item being consumed or an item being discarded; in response to the parent EPC being not reusable, checking, by the computer-based system, for disaggregation events earlier in the event sequence than the current aggregation event; in response to a disaggregation event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the computer-based system, for at least one of shipping or receiving events earlier in the event sequence than the current aggregation event; in response to the at least one of shipping or receiving event existing for the parent EPC, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the computer-based system, that there is only one commissioning event earlier in the event sequence than the current aggregation event, wherein the commissioning event includes identifying at least one of a sellable item, a container associated with the item or aggregation hierarchies for the item; in response to more than one commissioning event, setting, by the computer-based system, the parent EPC state to a condition reflecting error; in response to the parent EPC event sequence having events subsequent in time to the current aggregation event, associating, by the computer-based system, each of the subsequent events for the parent EPC with each of the child EPCs listed in the aggregation event, wherein the subsequent events are applied recursively through a parent and child containment hierarchy; and in response to beginning the event sequence with the aggregation event, setting, by the computer-based system, at least one of a child EPC state or the parent EPC state to indicate a missing commissioning event.
-
-
20. A system comprising:
-
a processor, a tangible, non-transitory memory configured to communicate with the processor, the tangible, non-transitory memory having instructions stored thereon that, in response to execution by the processor, cause the processor to perform operations comprising; receiving, by the processor and based on scanning at a first location, data for an aggregation event associated with an item at the first location; wherein the first location impacts the scanning of the data that is obtained by a proximity-based scanner at the first location, wherein the proximity-based scanner scans a parent electronic product code (EPC) and a child EPC at the first location, wherein the proximity-based scanner communicates with the processor; storing, by the processor, the data for the aggregation event in a database as ungrouped data elements formatted as a block of binary (BLOB); tuning, by the processor, the database to optimize database performance, wherein the tuning includes placing frequently used files on separate file systems to reduce in and out bottlenecks; and obtaining, by the processor, the data from the database for the aggregation event; in response to the parent EPC at the first location not being known, storing, by the processor, the parent EPC in storage; associating, by the processor, the aggregation event with the parent EPC at the first location; determining, by the processor, that an event sequence exists for the parent EPC at the first location; in response to the event sequence not existing, initiating, by the processor, an event sequence for the parent EPC at the first location; in response to the child EPC not being known, storing, by the processor, the child EPC in storage; associating, by the processor, the aggregation event with the child EPC at the first location; in response to a decommissioning event existing earlier in the event sequence, setting, by the processor, a parent EPC state to a condition reflecting error, wherein the decommissioning event is issued in response to at least one of destruction of an unconsumed item, an expired item, a damaged item, a recalled item, an item being dispensed, an item being consumed or an item being discarded; in response to the parent EPC being not reusable, checking, by the processor, for disaggregation events earlier in the event sequence than the current aggregation event; in response to a disaggregation event existing for the parent EPC, setting, by the processor, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the processor, for at least one of shipping or receiving events earlier in the event sequence than the current aggregation event; in response to the at least one of shipping or receiving event existing for the parent EPC, setting, by the processor, the parent EPC state to a condition reflecting error; in response to the parent EPC being not reusable, checking, by the processor, that there is only one commissioning event earlier in the event sequence than the current aggregation event, wherein the commissioning event includes identifying at least one of a sellable item, a container associated with the item or aggregation hierarchies for the item; in response to more than one commissioning event, setting, by the processor, the parent EPC state to a condition reflecting error; in response to the parent EPC event sequence having events subsequent in time to the current aggregation event, associating, by the processor, each of the subsequent events for the parent EPC with each of the child EPCs listed in the aggregation event, wherein the subsequent events are applied recursively through a parent and child containment hierarchy; and in response to beginning the event sequence with the aggregation event, setting, by the processor, at least one of a child EPC state or the parent EPC state to indicate a missing commissioning event.
-
Specification