1. Field
Embodiments of the invention relate to inventory collaboration. More specifically, embodiments of the invention relate to completion of master data for inbound messages.
2. Background
Upon receiving messages, for example, extensible markup language (XML) messages, a supply network collaboration system often needs certain data, such as parties and locations to process the incoming messages. However, often, some of the required data is missing. In such cases, it is necessary to complete missing data to permit the application to process the message internally. In that light, historically all services have been required to provide their own completion support to ensure that the data that the service requires is present in or resolved from the message prior to attempts by the application to process the message. This effectively increases the complexity of each application. The problem of missing data is particularly acute where multiple unrelated systems are exchanging messages in a supply chain. Collaboration between suppliers in the supply chain is very important.
A method and system for collaboration in a supply chain network is disclosed. Received messages prompt a call to an independent master data competition module. Missing data is resolved independently from the calling service class. The resolved message is then processed by a business object layer.
The invention is illustrated by way of example and not by way of limitation in the figures of the accompanying drawings in which like references indicate similar elements. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean at least one.
In one embodiment, it is presumed that business interface 120 accepts all messages in extensible markup language (XML) format regardless of the service class to which the message is directed. Stated differently, business interface 120 provides an XML inbound interface for messages directed to any service class of the business object layer 124. Also, within the collaboration module is master data completion module 122 and rule repository 126.
When the business object layer receives a message, any service class receiving the message calls and passes the message to the master data completion module 122. Master data completion module 122 parses incoming XML message to identify what required data is present and what required data is missing. The parsing is independent of the sender and the intended recipient. Thus, master data completion module 122 handles each incoming message generically. Master data completion module 122 then applies rules from rule repository 126 to resolve the required missing data from the remaining data present in the message. For example, if the “ship to” location is present and the product is present, a rule might allow derivation of the “ship from” location which may be required for certain services to process the message. This may occur, e.g., because only a single location ships the product to the destination.
In one embodiment, rule repository 126 includes a set of standard rules and a set of customized rules. The rules may be arbitrarily complexed. In such an embodiment, master data completion module 122 may apply the standard rules first and then resolve any unresolved required data using the custom rules. In one embodiment, master data completion module 122 uses GUI 130 to permit the customization of rules within rule repository 126.
If the master data completion module 122 is able to complete all required data, the business object layer 124 may continue internal processing of the transaction specified by the message. If the completion fails, the BOL 124 terminates processing of the incoming message. As one example, an inbound delivery includes a Buyer Party, Vendor Party, Product Recipient Party, a ship to location, a ship from location and items shipped. However, some applications may additionally need, e.g., a customer location. A rule may exist in the rule repository such as if Buyer Party=X then customer location=Y. Thus, by applying this rule, the master data completion module is able to derive the missing data, customer location from the inbound delivery message prior to passing the message to, e.g., an accounting business object that requires the missing data to perform, e.g., invoicing.
In some embodiments, business object layer 124 communicates with logistic inventory management system (LIME) 132, time series data management model (TSDM) 134, and order data management system (ODM) 136 to conduct the various business transactions. The particular module accessed depends on the type of transaction being conducted.
Elements of embodiments may also be provided as a machine-readable medium for storing the machine-executable instructions. The machine-readable medium may include, but is not limited to, flash memory, optical disks, CD-ROMs, DVD ROMs, RAMs, EPROMs, EEPROMs, magnetic or optical cares, propagation media or other type of machine-readable media suitable for storing electronic instructions. For example, embodiments of the invention may be downloaded as a computer program which may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
It should be appreciated that reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature, structure or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Therefore, it is emphasized and should be appreciated that two or more references to “an embodiment” or “one embodiment” or “an alternative embodiment” in various portions of this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures or characteristics may be combined as suitable in one or more embodiments of the invention.
In the foregoing specification, the invention has been described with reference to the specific embodiments thereof. It will, however, be evident that various modifications and changes can be made thereto without departing from the broader spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.