JP2009266243A - Dynamic access of data - Google Patents
Dynamic access of data Download PDFInfo
- Publication number
- JP2009266243A JP2009266243A JP2009144735A JP2009144735A JP2009266243A JP 2009266243 A JP2009266243 A JP 2009266243A JP 2009144735 A JP2009144735 A JP 2009144735A JP 2009144735 A JP2009144735 A JP 2009144735A JP 2009266243 A JP2009266243 A JP 2009266243A
- Authority
- JP
- Japan
- Prior art keywords
- data
- client
- server
- identifier
- database
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 77
- 238000004590 computer program Methods 0.000 claims description 36
- 230000008859 change Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 abstract description 16
- 230000010354 integration Effects 0.000 description 39
- 230000008569 process Effects 0.000 description 30
- 238000012545 processing Methods 0.000 description 23
- 238000012423 maintenance Methods 0.000 description 9
- 238000004519 manufacturing process Methods 0.000 description 8
- 230000015654 memory Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 238000013439 planning Methods 0.000 description 6
- 238000003860 storage Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 3
- 230000036961 partial effect Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000010923 batch production Methods 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000013506 data mapping Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012558 master data management Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
本発明は、マスターデータの動的アクセスに関する。 The present invention relates to dynamic access of master data.
混成の情報の技術環境においては、一つの構成内あるいは異なる構成に渡って、異なるコンピュータアプリケーションシステムが使用される。例えば、あるシステムは、ある会社のクライアントに関する情報を管理するのに使用することができ、他のシステムは製品に関する情報を管理するのに使用することができる。それぞれのシステムにはそれぞれのユーザーインターフェイスとデータ保存装置とデータを処理するための処理方法があるだろう。それぞれのシステムは、特定の仕事を扱うための性能を最適化するように設計されているだろう。2つのシステムが維持管理するデータの間には相互の関係があるだろう。例えば、幾つかの製品は、あるクライアントから要求があるかも知れず、ある特性に合致するように変更されなくてはならず、クライアントの特定の住所に届ける必要がある。 In a hybrid information technology environment, different computer application systems are used within one configuration or across different configurations. For example, one system can be used to manage information about a company's clients, and another system can be used to manage information about products. Each system will have its own user interface, data storage and processing method for processing the data. Each system will be designed to optimize performance to handle a particular task. There will be a correlation between the data maintained by the two systems. For example, some products may be requested by a client and must be modified to meet certain characteristics and need to be delivered to the client's specific address.
システムがデータを共有できるためには、一つのシステムが、クライアントのオブジェクトの形式で全てのクライアントデータを保存するマスターデータベースを維持管理するためのマスターデータサーバーとして導入されなくてはならず、他のシステムが、製品のオブジェクトの形式で全ての製品データを保存するマスターデータベースを維持管理するためのマスターデータサーバーとして導入されなくてはならない。それぞれのクライアントのオブジェクトは、クライアントの様々な態様を記述する属性を持っている。クライアントの属性の幾つかは、部分的なものであり、また幾つかは全体的なものである。部分的な属性は、それぞれのデータベースに保存されるだけだが、全体的な属性は、別のデータベースに非同期で定期的にもしくは或る要因によって複製が作られる。全体的な属性は複製が作られるので、システムは部分的なアプリケーションプログラミングインターフェイスを用いて各データベースにアクセスすることを必要とするクライアントデータと製品データとにアクセスすることができる。各システムは自身のデータベースを維持管理するので、それぞれのシステムは性能を向上させたり独自に維持管理することができる。 For a system to be able to share data, one system must be introduced as a master data server to maintain a master database that stores all client data in the form of client objects. The system must be implemented as a master data server to maintain a master database that stores all product data in the form of product objects. Each client object has attributes that describe various aspects of the client. Some of the client attributes are partial and some are global. Partial attributes are only stored in their respective databases, but overall attributes are replicated asynchronously to another database periodically or by some factor. Because the overall attributes are duplicated, the system can access client data and product data that require access to each database using a partial application programming interface. Each system maintains its own database, so each system can improve performance or maintain independently.
一態様において、本発明は広くデータに動的にアクセスする方法に使用される。本方法には、サーバーが維持管理するデータベース内に保存されたデータにアクセスするためにクライアントがサーバーに要求を送る段階と、データベースからデータの第1の組を読み出す段階と、クライアントが定義するマッピング規則の組に基づいて、データの第1の組をデータの第2の組にマッピングする段階と、データの第2の組をクライアントのところで受け取る段階とが含まれる。 In one aspect, the present invention is widely used in a method for dynamically accessing data. The method includes the steps of a client sending a request to the server to access data stored in a database maintained by the server, reading a first set of data from the database, and a mapping defined by the client. Mapping the first set of data to the second set of data based on the set of rules and receiving the second set of data at the client are included.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データベースに含まれるオブジェクトには、オブジェクトの属性値が含まれる。そのオブジェクトには製品が含まれる。そのオブジェクトにはビジネスの相手が含まれる。データの第1の組をデータの第2の組にマッピングすることには、クライアントに関連しないデータの第1の組の中の属性データを取り除くことが含まれる。マッピング規則の組は、時折、サーバーとは無関係なクライアントによって変更される。 By implementing the present invention, one or more of the following features can be obtained. An object included in the database includes an attribute value of the object. The object contains a product. The object includes a business partner. Mapping the first set of data to the second set of data includes removing attribute data in the first set of data not associated with the client. The set of mapping rules is sometimes changed by clients unrelated to the server.
他の態様において、本発明は広くデータを維持管理する方法に使用される。本方法には、識別子によって識別されるオブジェクトと関連する識別子とデータとをサーバーで受け取る段階と、各クライアントに対して、識別子とデータがクライアントが定義した一組の規則に適合するかを確認する段階と、識別子とデータとをデータベース内に入力する段階とを含み、前記サーバーは、クライアントにアクセスできるデータベースを維持管理するように構成されている。 In another aspect, the invention is widely used in a method for maintaining data. The method includes receiving at the server an identifier and data associated with the object identified by the identifier and verifying for each client that the identifier and data conform to a set of rules defined by the client. And entering the identifier and data into the database, wherein the server is configured to maintain a database accessible to the client.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データベースには、オブジェクトに関連する属性値が含まれる。識別子とデータベースが一組の規則に適合することを確認する段階には、オブジェクトの属性に関連するクライアントが定義した規則の部分集合にデータが適合することを確認する段階が含まれる。規則の部分集合には、属性値の許容範囲にある形式を定義するための規則が含まれる。識別子とデータが一組の規則に適合していることを確認する段階には、該識別子が、オブジェクトの識別に関連するクライアントが定義した規則の部分集合に適合することを確認する段階が含まれる。その一組の規則には、識別子の許容範囲にある形式を定義する規則が含まれる。本方法には、さらに、識別子にデータをリンクする段階が含まれる。本方法には、さらに、識別子にリンクされるデータを要求する要求をクライアントからサーバーに送る段階と、識別子にリンクされたデータベース内のデータをクライアントの許容範囲の形式に変換する段階が含まれる。本方法には、さらに、サーバーから第2サーバーに要求を送る段階と、どのクライアントがデータベースにアクセスできるかを特定する段階と、第2サーバーから、データベースにアクセスすることができると特定されたクライアントにその要求を回す段階とが含まれ、該要求は、識別子とデータの特定を要求する。そのオブジェクトには、製品が含まれる。そのオブジェクトには、ビジネスの相手が含まれる。サーバーは、拡張可能なマークアップ言語で書かれたメッセージを用いてクライアントとやり取りする。本方法には、さらに、各クライアントに対して、識別子とデータベースがクライアントが定義した規則の組に適合するかどうかを確認する要求をクライアントに送る段階と、もしある特定のクライアントが応答しなければ、そのクライアントを免責摘要表(exception list)に載せて、その識別子とデータが特定のクライアントが定義する一組の規則に適合することが確認できなかったことを知らせる段階とを含む。識別子とデータとが特定のクライアントが定義する一組の規則に適合するかどうかを確認する他の試みは、ある所定の長さの時間の後か、特定のクライアントがデータベース内のデータにアクセスしようとした時に実施される。 By implementing the present invention, one or more of the following features can be obtained. The database includes attribute values associated with the object. Verifying that the identifier and database conform to a set of rules includes confirming that the data conforms to a client-defined subset of rules associated with the attributes of the object. The rule subset includes rules for defining formats that are within the allowed range of attribute values. Verifying that the identifier and data conform to a set of rules includes confirming that the identifier conforms to a subset of rules defined by the client associated with the object's identification. . The set of rules includes a rule that defines a format that is within the allowable range of identifiers. The method further includes linking data to the identifier. The method further includes sending a request from the client to the server requesting data linked to the identifier, and converting the data in the database linked to the identifier into a client acceptable format. The method further includes sending a request from the server to the second server, identifying which clients can access the database, and the client identified as being able to access the database from the second server. The request is routed, and the request requires identification and data identification. The object includes a product. The object includes a business partner. The server interacts with the client using messages written in an extensible markup language. The method further includes, for each client, sending a request to the client to verify that the identifier and database conform to the set of rules defined by the client, and if a particular client does not respond. Placing the client on an exception list and notifying that the identifier and data could not be verified as complying with a set of rules defined by a particular client. Another attempt to verify that the identifier and data conform to a set of rules defined by a particular client is after a certain length of time, or a particular client tries to access data in the database. It is carried out at the time.
他の態様では、本発明は広くデータを維持管理する方法に使用される。本方法には、あるオブジェクトに関連する一組のデータの変更の要求をクライアントからサーバーに送る段階と、サーバーがそのデータの組を固定化したのでクライアントだけがそのデータの組を変更できるというメッセージを受け取る段階と、変更したデータをデータベースに保存するために、変更した一組のデータをサーバーに送る段階と、変更したデータがデータベースに保存されたというメッセージを受け取る段階と、他のクライアントの各々に対して、変更したデータにアクセスできるのは他のどのクライアントかをサーバーで決定する段階と、変更したデータが、クライアントが定義した一組の規則に適合することを確認する段階とが含まれ、また、前記一組のデータはサーバーに維持管理されるデータベース内に保存される。 In another aspect, the invention is widely used in a method for maintaining data. The method includes sending a request from the client to the server to change a set of data associated with an object, and a message that only the client can change the data set because the server has fixed the data set. Each of the other clients, receiving a message that the modified data is stored in the database, sending a modified set of data to the server to store the modified data in the database, In contrast, the process includes determining at the server which other clients can access the modified data and verifying that the modified data conforms to a set of rules defined by the client. The set of data is stored in a database maintained by the server.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データの組には、オブジェクトに関連する属性値が含まれる。クライアントが定義する規則の組には、属性値の許容範囲にある形式を定義するための規則が含まれる。サーバーは、属性を、クライアントが発行したチェックリストと比較することで、変更したデータにアクセスできるのは他のどのクライアントかを決定し、各チェックリストはクライアントにアクセス可能な属性を示している。オブジェクトには製品が含まれる。オブジェクトにはビジネスの相手が含まれる。サーバーは、拡張可能なマークアップ言語で書かれたコードを備えるメッセージを用いてクライアントとやり取りする。 By implementing the present invention, one or more of the following features can be obtained. The data set includes attribute values associated with the object. The set of rules defined by the client includes rules for defining formats that are within the allowable range of attribute values. The server compares the attribute with a checklist issued by the client to determine which other clients can access the changed data, and each checklist indicates an attribute accessible to the client. Objects include products. Objects include business partners. The server interacts with the client using messages with code written in an extensible markup language.
他の態様では、本発明は広く、局在(local)データベースにデータを保存する第1モードと、サーバーコンピュータが維持管理する遠隔(remote)データベースにデータを保存する第2モードの間で切り換えをすることのできるモジュールを持ったクライアントコンピュータを提供する段階と、遠隔データベースに保存したデータを、クライアントコンピュータが定義した形式を持ったデータに動的にマッピングするためのインターフェイスを提供する段階とを含む方法に使用される。 In another aspect, the present invention broadly switches between a first mode for storing data in a local database and a second mode for storing data in a remote database maintained by a server computer. Providing a client computer with a module that can be configured, and providing an interface for dynamically mapping data stored in a remote database to data having a format defined by the client computer. Used in the method.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。本方法は、さらに、局在データベースにデータを保存する第1モードと、サーバーコンピュータが維持管理する遠隔データベースにデータを保存する第2モードの間で切り換えをすることのできるモジュールも持った第2クライアントコンピュータを提供する段階を含んでおり、インターフェイスは、また、遠隔データベースに保存したデータを、第2クライアントコンピュータが定義した第2形式を持ったデータに動的にマッピングし、該第2形式は、第1クライアントに無関係に第2クライアントが変更する。 By implementing the present invention, one or more of the following features can be obtained. The method further includes a second module having a module capable of switching between a first mode for storing data in a localized database and a second mode for storing data in a remote database maintained by the server computer. Providing a client computer, wherein the interface also dynamically maps data stored in the remote database to data having a second format defined by the second client computer, the second format comprising: The second client changes regardless of the first client.
他の態様では、本発明は広く、識別子が特定するオブジェクトに関連したデータを保存するデータベースを維持管理するデータサーバーと、データベースの中に保存されたデータにアクセスするクライアントと、クライアントおよびデータサーバーとやり取りする統合サーバーとを含み、前記オブジェクトはオブジェクトの態様を説明する属性を持ち、前記データは属性に関連する属性値を含み、各クライアントは識別子と属性に対する一組の規則を定義し、前記統合サーバーは、データに対するクライアントからの要求に応えて、データサーバー中のデータを、クライアントが定義した規則に適合する形式を持ったデータにマッピングすることを特徴とするシステムに使用される。 In another aspect, the present invention broadly relates to a data server that maintains a database that stores data associated with an object identified by an identifier, a client that accesses data stored in the database, a client and a data server, An integration server that communicates, the object has attributes that describe aspects of the object, the data includes attribute values associated with the attributes, each client defines a set of rules for identifiers and attributes, and the integration The server is used in a system characterized by mapping data in the data server to data having a format that conforms to the rules defined by the client in response to a request from the client for the data.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。統合サーバーは、拡張可能なマークアップ言語で書かれたコードを含んだメッセージを用いてクライアントおよびデータサーバーとやり取りする。 By implementing the present invention, one or more of the following features can be obtained. The integration server interacts with the client and data server using messages containing code written in an extensible markup language.
他の態様では、本発明は広く、マスターデータの動的アクセスに対して、機械読み取り可能な媒体に明白に保存され、プログラム可能なプロセッサに対し、サーバーが維持管理するデータベースに保存されるデータにアクセスするというクライアントからの要求を受け取らせ、かつデータからの第1のデータの組を読み出させ、かつクライアントが定義した一組のマッピング規則に基づいて、第1のデータの組を第2のデータの組へマッピングさせ、かつ第2のデータの組をクライアントへ送らせるように動作可能な命令を含むコンピュータプログラム製品に使用される。 In another aspect, the invention broadly relates to data stored explicitly in a machine readable medium for dynamic access of master data and stored in a database maintained by a server for a programmable processor. Receiving a request from the client to access and reading the first set of data from the data, and based on a set of mapping rules defined by the client, the first set of data is Used in a computer program product that includes instructions operable to map to a data set and cause a second data set to be sent to a client.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データベースに保存されるデータには、オブジェクトの属性値が含まれる。オブジェクトには製品が含まれる。オブジェクトにはビジネスの相手が含まれる。命令は、プログラム可能なプロセッサに対し、クライアントに関連のない第1のデータの組内の属性データを取り除かせるように動作可能である。マッピング規則の組は、時折、サーバーに無関係にクライアントが変更する。 By implementing the present invention, one or more of the following features can be obtained. The data stored in the database includes object attribute values. Objects include products. Objects include business partners. The instructions are operable to cause the programmable processor to remove attribute data in the first set of data not relevant to the client. The set of mapping rules is sometimes changed by the client regardless of the server.
他の態様では、本発明は広く、クライアントにアクセス可能なデータベース内に保存されたマスターデータの動的アクセスに対して、機械読み取り可能な媒体に明白に保存され、プログラム可能なプロセッサに対し、識別子および識別子によって確認されるオブジェクトに関連するデータを受け取らせ、かつ各クライアントに対して、識別子とデータがクライアントが定義した一組の規則に適合するかを確認させ、かつ識別子とデータとをデータベース内に入れさせるように動作可能な命令を含むコンピュータプログラム製品に使用される。 In another aspect, the present invention broadly relates to the dynamic access of master data stored in a database accessible to a client and is clearly stored on a machine-readable medium and an identifier for a programmable processor. And receive data associated with the object identified by the identifier, and allow each client to verify that the identifier and data conform to a set of rules defined by the client, and store the identifier and data in the database. Used in a computer program product that includes instructions operable to cause
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データには、オブジェクトに関連する属性値が含まれる。命令は、プログラム可能なプロセッサに、オブジェクトの属性に関連してクライアントが定義した規則の部分集合にデータが適合することを確認させるように動作可能である。規則の部分集合には、属性値の許容範囲にある形式を定義するための規則が含まれる。命令は、プログラム可能なプロセッサに、オブジェクトの識別に関連してクライアントが定義した規則の部分集合に前記識別子が適合することを確認させるように動作可能である。規則の組には、識別子の許容範囲にある形式を定義するための規則が含まれる。命令は、プログラム可能なプロセッサに対し、データを識別子にリンクさせるように動作可能である。命令は、プログラム可能なプロセッサに対し、識別子にリンクされるデータの要求をクライアントからサーバーへ送らせ、識別子とリンクするデータベース中のデータを、クライアントの許容範囲にある形式へ変換させるように動作可能である。オブジェクトには製品が含まれる。オブジェクトにはビジネスの相手が含まれる。サーバーは、拡張可能なマークアップ言語で書かれたメッセージを用いてクライアントとやり取りする。命令は、プログラム可能なプロセッサに、各クライアントに対して、識別子とデータがクライアントの定義した規則の組に適合するかどうかを確認する要求をクライアントへ送らせ、もし特定のクライアントが応答しなければ、そのクライアントを免責摘要表に載せて、その識別子とデータが特定のクライアントが定義する一組の規則に適合することが確認できなかったことを知らせるように動作することが可能である。命令は、プログラム可能なプロセッサに、識別子とデータが特定のクライアントの定義した規則の組に適合するかどうかを確認する他の試みを、所定の長さの時間の後、あるいは特定のクライアントがデータベース内のデータにアクセスしようとする時に始めさせるように動作することが可能である。 By implementing the present invention, one or more of the following features can be obtained. The data includes attribute values associated with the object. The instructions are operable to cause a programmable processor to verify that the data conforms to a subset of rules defined by the client in relation to the attributes of the object. The rule subset includes rules for defining formats that are within the allowed range of attribute values. The instructions are operable to cause a programmable processor to verify that the identifier conforms to a subset of rules defined by the client in connection with object identification. The set of rules includes rules for defining formats that are within the allowable range of identifiers. The instructions are operable to link data to an identifier for a programmable processor. The instructions are operable to cause the programmable processor to send a request for data linked to the identifier from the client to the server and to convert the data in the database linked to the identifier to a format acceptable to the client. It is. Objects include products. Objects include business partners. The server interacts with the client using messages written in an extensible markup language. The instruction causes the programmable processor to send each client a request to verify that the identifier and data conform to the client-defined set of rules, and if a particular client does not respond The client can be placed on the disclaimer summary table and operate to signal that the identifier and data could not be verified as conforming to a set of rules defined by a particular client. The instruction may cause the programmable processor to make another attempt to verify that the identifier and data conform to a set of rules defined by a particular client, after a predetermined length of time, or when a particular client It is possible to operate to start when trying to access the data within.
他の態様では、本発明は広く、マスターデータの動的アクセスに対して、機械読み取り可能な媒体に明白に保存されて、クライアントとサーバーを持ったコンピュータシステムに対し、オブジェクトに関連した一組のデータの変更に対して第1クライアントからサーバーへ要求を送らせ、サーバーがそのデータの組を固定化したのでクライアントだけがそのデータの組を変更できるというメッセージを受け取らせ、データをデータベースに保存するために、変更した一組のデータをサーバーに送らせ、変更したデータの組がデータベースに保存されたというメッセージを受け取らせるように動作可能な命令を含むコンピュータプログラム製品に使用され、前記サーバーは他のクライアントのそれぞれに対して、変更されたデータの組にアクセスできる他のクライアントはどれかを決定し、かつ変更されたデータの組が、クライアントが定義した規則の組に適合することを確認する。 In another aspect, the present invention broadly provides a set of objects associated with a computer system having a client and a server that are explicitly stored on a machine-readable medium for dynamic access of master data. Send a request from the first client to the server for the data change, receive a message that only the client can change the data set because the server has fixed the data set, and store the data in the database For use in a computer program product comprising instructions operable to cause a modified set of data to be sent to a server and to receive a message that the modified data set has been stored in a database. Access the modified data set for each of the clients Possible other clients will determine which, and the modified data set is to ensure their suitability for the set of rules that the client defined.
本発明を実施することによって、以下の一つ或いは二つ以上の特徴が得られる。データの組には、オブジェクトに関連した属性値が含まれる。クライアントが定義した規則の組には、属性値の許容範囲にある形式を定義するための規則が含まれる。命令は、コンピュータシステムに、属性値をクライアントが発行したチェックリストと比較させるように動作可能であり、各チェックリストは、クライアントにアクセス可能な属性を示す。オブジェクトには製品が含まれる。オブジェクトにはビジネスの相手が含まれる。命令は、サーバーに、拡張可能なマークアップ言語で書かれたコードを備えるメッセージを用いてクライアントとやり取りさせるように動作可能である。 By implementing the present invention, one or more of the following features can be obtained. The data set includes attribute values associated with the object. The set of rules defined by the client includes rules for defining formats that are within the allowed range of attribute values. The instructions are operable to cause the computer system to compare the attribute value with a checklist issued by the client, each checklist indicating an attribute accessible to the client. Objects include products. Objects include business partners. The instructions are operable to cause the server to interact with the client using a message comprising code written in an extensible markup language.
本発明の一つ或いは二つ以上の実施形態の詳細は、添付の図面と以下の記載とから説明される。本発明の他の特徴と目的と利点とは、明細書の記載と図面と特許請求の範囲とから明らかになるであろう。 The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.
図1を参照すると、混成システム100は、マスターデータサーバー(MDS)110と、統合サーバー109と、クライアントシステム102〜106とを含む。マスターデータサーバー110は、一つのマスターデータベース112を維持管理し、クライアントシステム102〜106は、統合サーバー109とマスターデータサーバー110を通して、同期して動的にマスターデータベース112にアクセスする。クライアントシステム102〜106は、データが最初にマスターデータ112に保存される時に、整合性検査処理によってデータベース112に保存されるデータに一致を取る。データがマスターデータサーバー110あるいはクライアントシステム102〜106によって更新されると、その変更は、クライアントシステム102〜106の全てが見ることのできるものである。一つのマスターデータベース112を用いる利点は、管理のオーバーヘッドが減ることであり、異なるデータベースの同期の問題は無くなる。
Referring to FIG. 1, the
“同期する”及び“動的”の言葉は、クライアントシステムで実行される処理が情報を必要とする時には、クライアント側で局所的にデータを保存せずにいつでもマスターデータベース112からその情報にアクセスできることを意味している。その処理は、バックグランドで実行されるバッチ処理で良いし、ユーザーがマスターデータにアクセスし閲覧し維持管理できるように適応された処理で良い。別の処理は別のデータ形式を必要とし、クライアントシステムとマスターデータサーバーの間で転送されたデータは、一つの形式から他の形式に、システムの構成によって、動的にマッピングされる。各クライアントシステムは、他のシステムとは無関係に構成することができ、各システムは、マスターデータベース112中のデータを別々に閲覧し処理することができる。統合サーバー109は、各クライアントシステムとマスターデータサーバーが定義したデータ形式に適合するように、データを動的にマッピングする。
The terms “synchronize” and “dynamic” mean that when processing performed on the client system requires information, the information can be accessed from the
図2を参照すると、クライアント114は、クライアントシステム102〜106のいずれかを表すのに使用されている。例えば、販売アプリケーション116や、製品に関係するデータにアクセスする製品アプリケーション118などの異なるアプリケーションプログラムが、クライアント114上で実行される。アプリケーションプログラム116と118は、製品サービス層124から提供される機能にアクセスする。製品ユーザーインターフェイス120は、製品サービス層124と相互作用して、ユーザーのデータを画像表記したものを提供する。製品サービス層124はクライアント114に固有のものであり、クライアント114に関連する製品モデルに従った製品データを処理する機能を提供する。例えば、クライアント114は、クライアント関係を管理するのに使用されるアプリケーションを持っていよう。これらのアプリケーションは、クライアントとの間で転送される製品に関係したデータを必要とする。クライアント114上で実行されるアプリケーションが使用する製品データには、販売データが含まれるが、財務データは含まれない。クライアント114は、製品に関連するいかなるデータも保存しない。その代わりに、そのようなデータにアクセスしようという全ての要求は、統合サーバー109内の交換インターフェイス126を通してマスターデータサーバー110に回される。
Referring to FIG. 2,
マスターデータサーバー110の主な機能は、マスターデータベース112に保存されるマスターデータを維持管理することである。マスターデータにアクセスするアプリケーション128や130のような異なるアプリケーションプログラムは、マスターデータサーバー110上で実行することができる。アプリケーション128と130は、製品サービス層134が提供する機能にアクセスする。製品ユーザーインターフェイス132は製品サーバー層134と相互作用して、ユーザーのデータを画像表記したものを提供する。製品サービス層134はマスターデータサーバー110に固有のものであり、マスターデータサーバー110に関連する製品モデルに従った製品データを処理する機能を提供する。製品サービス層134はマスターデータベース112にアクセスする。クライアント114上で実行されるアプリケーションが、マスターデータベース112内に保存されるマスターデータにアクセスする必要がある時は、要求が交換インターフェイス126を通して製品サービス層134へ回される。交換インターフェイス126は、ピアトゥピア接続を用いて製品サービス層124と134へ接続することができる。
The main function of the
クライアント114に関連した製品モデルは、マスターデータサーバー110と関連した製品モデルとは異なるだろう。従って、製品サービス層124が製品サービス134を通してマスターデータベース112にアクセスする時は、意味論(semantic)マッピングが必要である。
The product model associated with
製品サービス層124は、クライアント114のアプリケーションが使用することのできる、整合性の或るアプリケーションプログラミングインターフェイスを提供する。これによって、販売アプリケーション116と製品アプリケーション118を維持管理し更新することがより容易になる。製品サービス層はクライアントに固有のものであるため、異なるクライアントは異なる製品サービス層をもつことになる。クライアントシステムの各製品サービス層とそれの関連したアプリケーションは、他のクライアントシステムの製品サービス層とは無関係に変更したり更新したりすることができる。
Product service layer 124 provides a consistent application programming interface that can be used by applications of
[マスターデータの維持管理]
マスターデータが作られたり変更された時、そのデータは、クライアント上で実行されているビジネス処理と整合性があるべきである。正しく動作するよう処理するために、その処理は、それが使用するデータの整合性に依存する必要が出てくる。マスターデータが作られたり更新される時、どのクライアントがデータを使用するかは知られている。従って、データに関係する全てのクライアントは、そのデータを使用する前にデータの整合性を調べる。
[Maintenance of master data]
When master data is created or changed, the data should be consistent with the business processes running on the client. In order to process correctly, the process needs to depend on the integrity of the data it uses. It is known which clients use the data when the master data is created or updated. Thus, all clients involved in the data check the integrity of the data before using the data.
ユーザーがマスターデータを維持管理する(例えば、加えたり、変更したり、削除したり)ので、ユーザーは、変更がクライアント上で実行される処理と整合性があることを確かめることを望む。ユーザーは、整合性があることを知らせ、データが整合性を持つのに役立つような迅速な応答を必要とする。 Because the user maintains (eg, adds, changes, deletes) the master data, the user wants to make sure that the changes are consistent with the processing performed on the client. The user needs a quick response that informs them that they are consistent and helps the data to be consistent.
クライアントによる整合性の規則は、互いに相反する。もし矛盾が生じたら、全てのクライアントを満足させるようなデータの選択は存在しないので、マスターデータオブジェクトを維持管理することはできない。それゆえクライアントは、マスターデータオブジェクトが作られるかも知れないその前に、ユーザーがデータを維持管理することによって調和が取れていなくてはならない。 Consistency rules by clients are contradictory to each other. If there is a conflict, there is no choice of data that will satisfy all clients, so the master data object cannot be maintained. Therefore, the client must be harmonized by the user maintaining the data before the master data object may be created.
整合性は、データを書くときか読むときのいずれかの時に調べることができる。データを読むときに整合性を調べることの利点は、各クライアントが、その処理で使用するデータの整合性を、データを読むときに確認するということである。欠点は、読む動作は書く動作よりも頻繁に行われるので、データを読む時のに整合性を調べることは、データを書くときよりも効率的で無いことである。他の欠点は、読む動作の間に不整合が発見されたときに、不整合を解決することができないことである。不整合なデータにアクセスした処理を停止し、誰がそのデータに侵入したのかを見つけて、修正が可能か又どれが正しいデータかを決定する必要がある。比較すると、データを書くときに整合性を調べることの利点は、実際にデータが保存されマスターデータベースに書き込まれる前に、ユーザーにデータベースを修正させることが可能なことである。 Consistency can be checked either when writing or reading data. The advantage of checking consistency when reading data is that each client checks the consistency of the data used in its processing when reading the data. The disadvantage is that reading is performed more frequently than writing, so checking consistency when reading data is less efficient than writing data. Another drawback is that the inconsistency cannot be resolved when an inconsistency is discovered during the read operation. It is necessary to stop the process accessing the inconsistent data, find out who invaded the data, and determine whether the correction is possible and which data is correct. In comparison, the advantage of checking consistency when writing data is that it allows the user to modify the database before the data is actually stored and written to the master database.
図3を参照すると、新しいデータがマスターデータベース112に入ると、ユーザーがマスターデータサーバー110を通してデータ入力処理142を実行する。この例では、マスターデータの維持管理は、マスターデータサーバー110が実行する。クライアントA114とB114は、統合サーバー109に接続される。ユーザーは、ユーザーインターフェイス(例えば、画面)を選択して、新しい製品のために新しい入力を作り固定する<146>。一例として、ユーザーは番号“4711”を選択して新しい製品を特定する。新しい入力がマスターデータベース112に保存される前に、他のユーザーが他の製品を特定するのに使用することができないように、識別子“4711”が“固定”される。固定化の手続きによって、唯一人の人以外は識別子“4711”に関連するマスターデータを作ることができなくなる。
Referring to FIG. 3, when new data enters the
識別子によってマスターデータベース112に入力されたデータに、全てのアプリケーションが確実にアクセスできるために、識別子(すなわち、番号“4711“)は、識別子の許容範囲にある形式を定義する体系に対して照合する<148>。マスターデータサーバー110とクライアントA114とクライアントB114の各々は、他の体系とは異なる自身の体系を持つことができる。例えば、マスターデータサーバー110は、10桁未満の識別子を必要とする体系を使用することができる。識別子がマスターデータサーバー110が必要とする体系に適合することを確認されて、要求がマスターデータサーバー110から統合サーバー109へ送られて、その識別子を様々なクライアントが生成した体系に対して調べる。
In order to ensure that all applications can access the data entered into the
統合サーバー109は、クライアントが新しいデータへアクセスできるところの情報を持っている。例えば、クライアントA114とクライアントB114は共に“製品”に関連するデータにアクセスする。統合サーバー109は、体系に対して識別子を調べる要求を、関係するクライアントである、この場合、クライアントA114とクライアントB114に回す<150>。クライアントA114が識別子を確認するという要求を受け取ると、クライアントA114は、自身の体系に対して識別子を調べる<152>。もし識別子が体系に合致しなければ、誤りメッセージがマスターデータサーバー110に送られて、ユーザーが他の識別子を選ばなくてはならないことを示す。同様に、クライアントB114は、自身の体系に対して識別子を調べ<154>、もし識別子が体系に合致しなければ、誤りメッセージをマスターデータサーバー110に送る。148,152,154で調べることによって、マスターデータサーバー110とクライアントA114とクライアントB113のすべてが、サーバー110とクライアントA114とクライアントB114の各々に対して、正しい識別子を用いて新しいデータにアクセスすることができることが確実となる。
The
もし、識別子の形式が確認されると、ユーザーは、製品4711に関する一般的な属性の維持管理を継続する。例えば、ある属性は、製品の短い説明か、或いは測定の基本単位か、或いは測定の販売単位か、或いは製品の価格か、或いは製品の数量か、あるいは製品に関するプランニングパラメータか、或いは製品の販売者であって良い。一般的な属性は、二つ以上のクライアントに関連する属性である。 If the identifier format is confirmed, the user continues to maintain general attributes for the product 4711. For example, an attribute can be a short description of a product, a basic unit of measurement, a sales unit of measurement, a price of a product, a quantity of a product, a planning parameter for a product, or a seller of a product. It may be. General attributes are those associated with more than one client.
ユーザーは、各属性毎に属性値を入力し、属性値がそれら属性に対する整合性の記録の集まりを満足しているかどうかを調べる<158>。例えば、整合性の規則では、もし測定の新しい単位が加えられると、それは測定の既存の単位に対して変換因子を必要とすることを要求する。他の例として、整合性の規則は、もし或る数が製品の価格を表すのに使用されると、貨幣も同様に明記されなくてはならない。 The user enters an attribute value for each attribute and checks whether the attribute value satisfies a collection of consistency records for those attributes <158>. For example, consistency rules require that if a new unit of measurement is added, it requires a conversion factor for the existing unit of measurement. As another example, consistency rules must be specified in the same way if money is used to represent the price of a product.
マスターデータサーバー110は、統合サーバー109に要求を送って、属性値の確認を要求する。統合サーバー109は、その要求を関連するクライアントに回す<160>。その要求を受け取ると、クライアントA114は、その属性値をクライアントA114が定義する整合性の記録に対して検査し<162>、もし規則違反が起こるとメッセージをマスターデータサーバー110に送る。例えば、クライアントA114が、測定の販売単位を伴う測定の基本単位を必要とする整合性の規則を定義することができる(例えば、もし販売員が製品を箱単位で売ると、販売員はこの測定の単位である箱と、一箱の中にいくつ製品が入っているかに関する追加情報とを必要とする)。他の整合性規則は、価格をユーロで明記することを要求するかも知れない。
The
属性の確認に関する要求を受け取ると、クライアントB144は、クライアント144が定義した規則に対して属性値を調べる<164>。例えば、整合性の規則は、未決の計画実行が無ければ製造時間のみが変更可能であることを要求する(その理由は、例えば、計画実行は一定の製造時間によって決まるからである)。
Upon receiving the request for attribute confirmation, the
クライアントA114とクライアントB114が、属性がこれらクライアントが定義した規則に適合することを確認した後、ユーザーは、インターフェイス(例えば、画面)を選択して、例えば販売に関連するデータを維持管理する<166>。販売に関連する属性は、クライアントA114にのみ関係し、クライアントB114には関係しない。統合サーバー109は、どの種類の属性がどのクライアントに関係するかを追跡し続ける。ユーザーが販売に関連するデータを追加あるいは変更した後に、マスターデータサーバー110は、要求を統合サーバー109に送り、そのデータがクライアントの整合性規則に適合することを確認する。統合サーバー109は、その要求を、本例ではクライアントA114である関連するクライアントに回す<168>。その要求を受け取ると、クライアントA114は、販売に関連するデータを、クライアントA114が定義した販売データに関連する整合性規則と照合する。もしそのデータが整合性規則と整合していれば、マスターデータサーバー110は、新しいデータをマスターデータベース112へ保存する<172>。
After
マスターデータも、維持管理ダイアログを実行するインターフェイスを用いるクライアントのユーザーが維持管理することができる。インターフェイスは、クライアントに関連するデータのみが表示され維持管理されるように設計することができる。 Master data can also be maintained by the user of the client using an interface that executes the maintenance dialog. The interface can be designed so that only data relevant to the client is displayed and maintained.
図4を参照すると、データ維持管理処理174は、クライアントがマスターデータベース112内のデータを更新した時に実行される。この例では、クライアントA114は、製品4711に関するデータを更新することを希望している。クライアントA114は製品4711を“開く”<176>が、これは、ユーザーが識別子“製品4711”を入力してどのデータを更新する必要があるのかを特定することのできる、グラフィカルユーザーインターフェイスを示すことを意味していよう。
Referring to FIG. 4, the data
クライアントA114は、要求を統合サーバー109に送り、これがマスターデータサーバー110からのデータを要求する<178>。要求を受け取ると、マスターデータサーバー110は製品4711に関連するデータを読んで固定する<180>。固定化は、どのクライアントがデータベースを変更したかに係わらず、マスターデータサーバー110が行う。マスターデータサーバー110は、この情報が、データへのアクセスをしようとしている他のクライアントと交信することができるように、どのクライアントがデータベースを固定化したかを知る必要がある。このデータは統合サーバー109に送られ、データはクライアントA114の形式を持ったデータにマッピングされる。一例として、クライアントA114は、販売に関連するデータを維持管理する。クライアント114は、販売に関連するデータのみを示す画面を表示するのにグラフィカルユーザーインターフェイスを使う。クライアントA114にいるユーザーは、販売に関連するデータの維持管理(例えば、訂正したり削除したり)を進める<182>。更新されたデータは、他のクライアントとマスターデータサーバー110が定義した規則に対する整合性を調べられる。
クライアントA114は、要求をサーバー109に送って、確認処理を始める。統合サーバー109は、この要求を関連するクライアントへ回す。この例では、販売データクライアントB144に関連していないので、統合サーバー109はその要求をクライアントB144には送らない。統合サーバー109は、要求をマスターデータサーバー110へ送るが、このサーバーは要求に応答してマスターデータサーバー110が整合性のために定義した整合性規則に対して、属性を照合する<188>。マスターデータサーバー110と他のクライアントは、更新済みデータが整合性規則に整合していることを示すメッセージを送り、また、マスターデータサーバーが更新済みデータをマスターデータベース112へ保存することを要求するメッセージをマスターデータサーバー110へ送る。
The
マスターデータサーバー110は、多くのアプリケーションあるいは異なるクライアント上で実行される処理に必要なデータを維持管理する。オブジェクトに関連したデータを維持管理するクライアント(あるいは、クライアントを使用するユーザー)は、全てのデータを変更する資格を与えられたり承認されたりはせず、自身の処理(例えば、販売)に関するデータのみを維持管理することができる。統合サーバー109は、ユーザーが自身の処理に関連するデータを持つ画面のみにアクセスすることができ、従ってこの画面に対して整合性の要求を扱うことができるだけであるように構成される。維持管理されてきたデータ(及びデータに関連するオブジェクト)は、この画面に対して使用することができる(例えば、この画面に関連する処理に対して使用することができる)。そのデータは、まだ作られていない画面(例えば、未来の計画)においては使用することができない。
The
整合性を照合する必要のあるクライアントは、統合サーバー109によって決定される。統合サーバー109は、照合の要求を、実行時にクライアントへ回し、“了解メッセージ”あるいは整合性の誤りを記載したメッセージの集積のいずれかの、各クライアントの結果を戻す。誤りは、ユーザーがデータを変更して整合性を保証できるように表示される。
The clients that need to be checked for consistency are determined by the
整合性の照合処理の間、もしクライアントが応答しないと、クライアントは、免責摘要表に載せられ、照合処理は、残りのクライアントに対して処理を続ける。これによって、マスターデータの維持管理は、クライアントのいくつかの間違いのせいで妨害されることは絶対に無い。 During the consistency verification process, if the client does not respond, the client is placed on the disclaimer summary table and the verification process continues for the remaining clients. This ensures that master data maintenance is not hampered by some mistakes of the client.
図5を参照すると、データ維持管理処理194は、クライアントが応答しない時に発生する。マスターデータサーバー110は、製品4711に関連するデータを維持管理し<196>、整合性を確かめる要求を統合サーバー109へ送る。統合サーバー109は、その要求を関連するクライアントに回す<198>。この要求を受け取ると、クライアントA114は属性を調べる<200>。クライアントB144は、この要求を受け取ると、同様に属性を調べると考えられる<202>。しかし、幾つかの理由から(例えば、シャットダウン)、クライアントB144は応答しないこともある<204>。統合サーバー109は、クライアントからの全ての応答を集めて<206>、クライアントB144から応答を受け取っていないことを発見する。統合サーバー109は、クライアントから集めた応答をマスターデータサーバー110へ送る。
Referring to FIG. 5, the
マスターデータサーバー110は、クライアントB144を免責摘要表に加えて<208>、クライアントB144が、更新済みデータがクライアントB144が要求した整合性規則と整合性があるかどうかを確かめられていないことを示す。マスターデータサーバー110は、更新済みデータをマスターデータベース112へ保存して<208>、クライアントB144を調べる仕事の流れを始める<212>。この仕事の流れは、ある時間が過ぎた後に、手動もしくは自動でクライアントB144を調べることができる、あるいはクライアントB144が読み出し要求を送った時などの、クライアントとの通信が可能であると知らせるきっかけの出来事があると、クライアントB144を調べる。もし統合サーバー109が首尾良くクライアントB144と通信することができると、クライアントB144は、整合性を確認する属性を調べる<214>。不一致は無いというクライアントB144からの確認を受け取ると、マスターデータサーバー110はクライアントB144を免責摘要表から外す。
上記の方法を用いて、マスターデータの維持管理処理は、クライアントがネットワーク内で利用可能で無い時にはインストールされない。不整合のデータは、クライアントに渡らない。免責摘要表は、どのクライアントを、整合性の照合が完全に終わるまで、一時的にオブジェクトへのアクセスを禁止すべきかを決定するのに使用する。 Using the above method, the master data maintenance process is not installed when the client is not available in the network. Inconsistent data is not passed to the client. The disclaimer summary table is used to determine which clients should be temporarily prohibited from accessing the object until the integrity check is complete.
[整合性と組織的単位]
データオブジェクトの属性は“組織単位”であろう。組織単位のために作られたデータは、あるクライアントにのみ関連するだろう。例えば、最初の製造工場に対する計画データが作られた時に、そのデータは、最初の製造工場に対して計画を実施するアプリケーション(例えば、上級プランナーとオプティマイザーのアプリケーション)によってのみ必要とされ、第2の製造工場に対して計画を実施する計画アプリケーションとは無関係であろう。
[Consistency and organizational units]
The attribute of the data object will be “organizational unit”. Data created for an organizational unit will only be relevant to certain clients. For example, when planning data for the first manufacturing plant is created, that data is only needed by the application that performs the planning for the first manufacturing plant (eg, senior planner and optimizer applications) It will be independent of the planning application that implements the plan for the manufacturing plant.
統合サーバー109は、データが関係のあるクライアントにのみデータを回す。整合性の照合は、それらのクライアントによって実行される。もし統合サーバー109が処理するメッセージには、2つの組織への参照が含まれるならば、メッセージは2つの小メッセージに分割することができ、各小メッセージは整合性の照合を実施するのに使用されるだろう。この方法は、組織単位以外の属性によって異なるクライアントへデータを回すのに使用することもできる。
The
時に、データは正確に回されない。それ故、クライアントは、クライアントの通常動作を乱さないやり方で無関係のデータに反応するように設計される。例えば、もし第2製造工場に対する計画アプリケーションが第1製造工場に対するデータを受け取ると、計画アプリケーションは、誤りを整合性照合処理に返す前に、このデータを無視する必要がある。 Sometimes the data is not rotated accurately. Therefore, the client is designed to react to irrelevant data in a manner that does not disrupt the normal operation of the client. For example, if the planning application for the second manufacturing plant receives data for the first manufacturing plant, the planning application needs to ignore this data before returning an error to the integrity verification process.
[クライアントを加える]
新しい整合性の要求を備えた新しいクライアントが混成システム100に加えられると、クライアントの整合性の照合が、新しいクライアントがデータにアクセスできる前に、全てのマスターデータに対して実行される。
[Add client]
When a new client with a new consistency request is added to the
新しいクライアントは、統合サーバー109で登録され、どの属性を照合したら良いかを示す照合インターフェイスを発行する。新しいクライアントは、新しいクライアントが整合性の照合が完了するまでアクセスされないように、全てのデータに対して免責摘要表に置かれる。仕事の流れ212(図6)に似た仕事の流れが、新しいクライアントに対する整合性の照合を実行するために始められる。
The new client is registered with the
[探索]
クライアントがマスターデータを探索する時、要求がマスターデータサーバー110に回送される。最初に、マスターデータサーバー110は、重要なフィールド(例えば、短い記述)を少々持った探索結果の表をクライアントに戻す。もし、クライアントが探索結果の全てあるいはいくつかの上にさらなる情報を必要とするならば、クライアントは、それ以上の情報にアクセスするのに読み出し処理(下述)を使用する。探索に使用されるマスターデータサーバー110のアプリケーションプログラミングインターフェイス(API)は、クライアントが必要とする探索の選択事項を網羅する多数の可能性を提示するように設計される。
[search]
When the client searches for master data, the request is routed to the
クライアントがマスターデータベース112内のデータを読む要求をすると、その要求は、マスターデータサーバー110へ回される。例えば、読み出し処理には2つの種類がある。読み出し処理の一つの種類は“識別結果を得る”と呼ばれる、オブジェクトの識別情報に対する要求であり、これは、オブジェクトの識別子とある記述パラメータ(例えば、製品に対する短い文章や、ビジネスの相手に対する名前)を返す。他の種類の読み出し処理は“詳細を得る”と呼ばれる、オブジェクトの詳細情報に対する要求であり、これは、オブジェクトに関連する情報全てを返す。
When a client requests to read data in the
各クライアントは、オブジェクトの属性の定義を各自持つであろうし、クライアントはそのオブジェクトの一部を“詳細を得る”読み出し処理の中で考察する。それらの属性は、マスターデータサーバー110の中で知られた全ての属性の部分集合であろう。マスターデータサーバー110が別の、より一般的なデータモデルを持っていることはあり得ることであり、それ故、クライアントAPIはマスターデータサーバーAPIにマッピングされる必要がある。このマッピングは、アプリケーション統合層の中で実行される。
Each client will have its own definition of the attributes of the object, and the client will consider a portion of the object in the “get details” read process. Those attributes would be a subset of all attributes known within the
[削除]
マスターデータベース112内でのデータの削除は、2段階で実行することができる。最初に、各クライアントは、オブジェクトへの参照が存在するかどうかを尋ねられる。もし参照が存在しなければ、クライアントからオブジェクトに関連したデータを読もうとする読み出し処理は、それ以降受け付けられず、オブジェクトはどの探索結果においても返されない。2番目に、オブジェクトはマスターデータベース112に保管され、またそこから削除される。2番目の段階は、全てのクライアントが、オブジェクトに対する参照は無いことを述べた時に実行される。他のクライアントが未だオブジェクトにアクセスし使用することができるのに対し、あるクライアントに関してオブジェクトを“削除”することが可能である(第2段階は飛ばした)。
[Delete]
Deletion of data in the
多くの処理によって、処理トランザクションから、そのトランザクションに関連したマスターデータへの航行(navigation)が可能となる。例えば、ある製品に対する販売注文が生まれると、ユーザーは、製品の識別子と製品の記述とを見る。もしユーザーがより詳細を知りたい場合は、他の属性を見るためにその製品に関するマスターデータを示すインターフェイスへ航行することができる。 Many processes allow navigation from a processing transaction to the master data associated with that transaction. For example, when a sales order for a product is created, the user looks at the product identifier and the product description. If the user wants to know more details, he can navigate to the interface showing the master data about the product to see other attributes.
図2に示される例のように、クライアントの結びつきが緩い時は、2つの場合がある。もしクライアントが自身のマスターデータユーザーインターフェイスを持っているなら、そのマスターデータユーザーインターフェイスは、製品のマスターデータを表示するのに使用されるはずである。もしクライアントが自身のユーザーインターフェイスを持っていないなら、マスターデータサーバー110のユーザーインターフェイスが使用される。
There are two cases when the client connection is loose, as in the example shown in FIG. If the client has its own master data user interface, that master data user interface should be used to display the product's master data. If the client does not have its own user interface, the
[アプリケーション間の通信]
図6は、アプリケーションと、例えば製品マスターデータのようなマスターデータとの間の相互関係を示している。ユーザーは、ユーザーインターフェイス218を用いて製品に関する注文220を作る。ユーザーは、探索アプリケーションを用いて、様々な属性(例えば、永久鍵、記述、製品の種類)によって或る製品を探し出す。ユーザーがデータを入力画面へ入力した後、探索アプリケーションは製品が存在するかどうかを調べる。探索アプリケーションは、製品マスターデータベース112にアクセスする製品API222を呼び出す。もし探索アプリケーションが製品を見つけると、その製品の短い記述文章がユーザーインターフェイス上に現れる。ユーザーが注文のデータを入力し終えた後、ユーザーはデータを保存する。注文のデータが保存されると、その製品のマスターデータへのリンク(あるいは参照)が作られる。いくつかの場合には、製品の属性が必要に応じて更新される。
[Communication between applications]
FIG. 6 shows the interrelationship between the application and master data such as product master data. The user creates an
[ソフトウェアの層の間の通信]
図7は、クライアントシステム224とマスターデータサーバー110のソフトウェアの層の間の通信を示している。クライアントシステム224には、ユーザーインターフェイス226とビジネスサーバー層228と継続サービス(persistency service)層230とマスターデータベース232とが含まれる。同様に、マスターデータサーバー110には、ユーザーインターフェイス234とビジネスサービス層236と継続サービス層238とデータベース240とが含まれる。クライアントシステム224とマスターデータサーバー110は、階層構造のソフトウェアアーキテクチャである。各層は、各システム内部のすぐ下の層の関数にアクセスする。クライアントシステム224がマスターデータサーバー110のデータベース240内のデータにアクセスする必要がある時、クライアント224のビジネスサービス層228は、マスターデータにアクセスするために、マスターデータサーバー110のビジネスサービス層238と通信する。
[Communications between software layers]
FIG. 7 illustrates communication between the
マスターデータサーバー110のみがマスターデータベース240内のマスターデータにアクセスする。動作の一つのモードでは、クライアントシステム224はマスターデータを保持せず、クライアントに特化した処理データのみに対して自身の継続サービス230を使用する。例えば、ポータルを使用することによって、ユーザーインターフェイス226と234は、統合することができ、ユーザーはユーザーインターフェイス226からユーザーインターフェイス234へリンク或いは航行することができる。
Only the
クライアントシステム224のユーザーインターフェイス226とビジネスサービス層228は、例えば交換インターフェイス或いはウェブサービスを通して直接にマスターデータサーバー110のビジネスサービス層236にアクセスできる。
The
クライアントシステム224の継続サービス層230は、マスターデータサーバー110のビジネスサービス層236を使用して、マスターデータの継続を委譲することができる。
The
クライアントシステム224のユーザーは、アーキテクチャの要求によって、ビジネスサービス層228(リンク242を通して)、或いは継続サービス層230(リンク244を通して)からマスターデータベース240にアクセスすることを決定できる。継続サービス層230から接続することの利点は、継続サービス層230内のサービスの数は、通常、ビジネスサービス層228内のサービスの数よりも少ないことである。この結果、マスターデータベース240にアクセスできるように、少々の努力でクライアントシステム224を適応させることになる。継続サービス層230から接続することの他の利点は、継続サービス層230からマスターデータサーバー110にアクセスすることによって、どこにデータが保存されるかに係わらず、ビジネスサービス層228は独立して構成することができる点である。これによって、図8に示されるハイブリッドアーキテクチャを実施することが、より容易になる。
A user of the
[クライアント側でのハイブリッドデータ保存]
混成情報技術システムの一実施例において、どのようにクライアントがマスターデータにアクセスするかは、どのようにクライアントが構成されるかによって決まる。もしクライアントが単独のシステムであれば、マスターデータはクライアントのデータベース内に直接に保存される。もしクライアントがマスターデータサーバーを持った分散型の環境で実行されるなら、マスターデータサーバーのマスターデータの継続性が使用される。
[Hybrid data storage on the client side]
In one embodiment of a hybrid information technology system, how a client accesses master data depends on how the client is configured. If the client is a single system, the master data is stored directly in the client's database. If the client runs in a distributed environment with a master data server, the master data continuity of the master data server is used.
開発しているソフトウェアの見地からすると、マスターデータの一つのソフトウェア“インスタンス”のみを実施するのが有利であり、これは異なるシステム−つまり統合済み導入シナリオ内と同様に分散型環境−において使用することができる。これによって、開発費用と維持管理費用が削減され、顧客に単一のソフトウェアを提供することができる。 From the point of view of the software being developed, it is advantageous to implement only one software “instance” of the master data, which is used in different systems—ie distributed environments as well as in integrated deployment scenarios. be able to. This reduces development and maintenance costs and allows customers to provide a single piece of software.
マスターデータにアクセスするための“ハイブリッドソフトウェア”は、図8に示したアーキテクチャを用いて開発することができる。継続サーバー層230は、局在データベース232か遠隔マスターデータベース240のいずれかに、マスターデータサーバー110のビジネスサービス層236を通してアクセスすることができるように設計される。このことによって、クライアント側におけるソフトウェアをカスタマイズする点において、データが維持管理されるのが局所的にか或いは遠隔からかを決定することが可能になる。
“Hybrid software” for accessing master data can be developed using the architecture shown in FIG. The
[マスターデータのマッピング]
マスターデータは、クライアントシステムとマスターデータサーバーとの間でメッセージを用いて交換される。統合サーバーは、メッセージの経路決定とマッピングに対して責任がある。統合サーバーは、クライアントに関する情報を持っており、メッセージのマッピングとデータの種類とインターフェイスに適切なものを選択することができる。
[Master data mapping]
Master data is exchanged between the client system and the master data server using messages. The integration server is responsible for message routing and mapping. The integration server has information about the client and can select the appropriate one for message mapping and data types and interfaces.
統合サーバーを用いることの利点は、クライアントシステムあるいはマスターデータサーバー上にコードを加える必要が無いことである。マッピング規則は、統合サーバーの上で維持管理され保存される。一例では、マッピング規則は、クライアントのアプリケーションを開発する人が開発する。 The advantage of using an integrated server is that no code needs to be added on the client system or the master data server. Mapping rules are maintained and stored on the integrated server. In one example, the mapping rules are developed by a person developing a client application.
[クライアントからマスターデータにアクセスする]
図9を参照すると、マスターデータサーバー114には、製品データを管理する製品データモジュール288が含まれる。製品データモジュール288には、ユーザーインターフェイス部品282とアプリケーションプログラミングインターフェイス部品284とマスターデータベース286とが含まれる。クライアントアプリケーション250は、マスターデータブローカー(broker)284を呼ぶことによって製品データモジュール288にアクセスするが、これによって、キャッシュの機能と、権限の確認とを実行して、局在して保存されるデータにアクセスするか(クライアントが単独システムとして構成される場合)、遠隔に保存されるデータにアクセスするか(クライアントがマスターデータサーバーと相互作用するように構成される場合)を決定する。クライアント110がマスターデータサーバーと相互作用するとき、いくつかのデータは、局所的に(例えば、クライアント110のメモリ内で)キャッシュに格納することもできる。
[Access master data from clients]
Referring to FIG. 9, the
マスターデータブローカー252には、製品サーバー部品290と交換インターフェイスプロキシ292と局在マスターデータベース296とが含まれる。製品サーバー部品290は、アプリケーション250が呼ぶことのできるアプリケーションプログラミングインターフェイスを提供する。もしクライアント110が単独のシステムならば、製品サーバー部品290は、パス298を通して局在マスターデータベース296内に保存されるデータにアクセスできる。もしクライアント110がマスターデータサーバー114と相互作用するように構成されていると、製品サービス部品290は、パス300を通して交換インターフェイスプロキシ292と通信することができる。交換インターフェイスプロキシ292は、統合サーバー109の交換インターフェイス126を通して、マスターデータサーバー114のアプリケーションプログラミングインターフェイス284と通信する。アプリケーションプログラミングインターフェイス284は、マスターデータベース286内に保存されるマスターデータにアクセスするのに使用される。クライアント110が単独のシステムとして構成されるにしても、マスターデータサーバー114と相互作用するネットワークシステムの一部として構成されるにしても、マスターデータは、局在マスターデータベース290あるいはマスターデータベース286のいずれか一つのデータベース内で維持管理される。
[データオブジェクト間のリンク]
マスターデータオブジェクトと処理オブジェクトは、ある意味論と結びつけることができる。その実行は、例えば一般的な顧客関係管理相関(customer relationship management interlinkage)の、時間依存の属性n:mの関連性のようなパターンによって行われる。
[Links between data objects]
Master data objects and processing objects can be associated with certain semantics. The execution is performed by a pattern such as the relationship of the time-dependent attribute n: m of, for example, general customer relationship management interlinkage.
マスターデータは、マスターデータサーバー110上に保存される。マスターデータオブジェクト間のリンクがマスターデータサーバー110上に保存されるべきかどうかの決定は、接続されたクライアント内のリンクの使用法による。もしリンクの意味論が多くのシステムに必要ならば、そのリンクは、マスターデータサーバー110上に保存されなくてはならない。
Master data is stored on the
一般的に、マスターデータサーバー110は、処理データを知らない(或いは保存しない)。従って、クライアント114は、処理データから参照したマスターデータへのリンクを維持管理する責任がある。
In general, the
時に、マスターデータサーバー110上の処理データへのリンクを保持する必要があるだろう。そのようなリンクをマスターデータサーバー100上で実施することは、一般的である。
Sometimes it will be necessary to maintain a link to the processing data on the
[データのキャッシング]
マスターデータの読み出しアクセスは、マスターデータの他の処理よりも頻繁に起こり、屡々、速度が重視されるアプリケーションの一部である。クライアント側にあるデータをキャッシングすることにより、読み出しアクセス動作は、より高速に実行できる。
Data caching
Master data read access occurs more frequently than other processes of master data and is often part of an application where speed is important. By caching the data on the client side, the read access operation can be performed at a higher speed.
クライアント上でキャッシングを実行するために、異なる方法を使用することができる。どちらの方法が良いかは、マスターデータのアーキテクチャによる。一つの方法は、統合サーバー内のデータをキャッシングすることである。一つの方法では、統合サーバーは、メッセージ読み出し動作に対する応答をキャッシングすることができる。もし同じメッセージが再び送られると、応答は、キャッシュから送ることができる。もう一つの方法では、キャッシングはメッセージレベルで実行することができる。メッセージは、マスターデータアプリケーションによってキャッシングされる。さらに別の方法では、オブジェクトモデルがキャッシングされる。屡々、クライアントマスターデータトランザクションは、キャッシュ機構を持っている。このキャッシュは、マスターデータサーバーと通信する時にも使用することができる。 Different methods can be used to perform caching on the client. Which method is better depends on the architecture of the master data. One way is to cache the data in the integration server. In one method, the integration server can cache responses to message read operations. If the same message is sent again, the response can be sent from the cache. Alternatively, caching can be performed at the message level. Messages are cached by the master data application. In yet another method, the object model is cached. Often, client master data transactions have a cache mechanism. This cache can also be used when communicating with the master data server.
適切なキャッシングの結果を得るために、キャッシュされた内容は、クライアントのセッションの間で分ける必要がある。典型的には、これは、キャッシュをデータベース上で継続させることによって達成される。分けたオブジェクトの新しい基準の技術を用いて、メモリ内のキャッシュは性能を向上させるために分けることもできる。 In order to get proper caching results, the cached content needs to be split between client sessions. Typically this is accomplished by continuing the cache on the database. Using a new standard technique for partitioned objects, the cache in memory can also be partitioned to improve performance.
継続的なキャッシュが用いられると、クライアントは、古い入力がキャッシュから削除されるように、最後のアクセス時間を記録することになる。 If a continuous cache is used, the client will record the last access time so that old entries are removed from the cache.
キャッシュされたデータは、データが最早役に立たなくなったときに無効にする必要がある。マスターデータはめったに変更されないので、より良い方法は、定期的に無効にするよりも明示的に無効にする方法を使用することである。マスターデータが変更されると、この情報は、全てのクライアントに知らされるので、皆、自分のキャッシュを無効にすることができる。クライアントは、無効にした全てのデータを、例えば夜間などの都合の良い時に再読み出しすることもできる。キャッシングの作用は、サーバー側で申し出ることができる。セッション間で分けられたキャッシュの結果、性能は向上するだろう。 Cached data needs to be invalidated when the data is no longer useful. Since master data rarely changes, a better way is to use an explicit invalidation method rather than periodic invalidation. When the master data changes, this information is communicated to all clients and everyone can invalidate their cache. The client can also re-read all invalidated data at a convenient time, such as at night. Caching can be offered on the server side. Performance will improve as a result of caching divided between sessions.
[権限の確認]
ユーザーは権限の確認に重要な役を果たす。ユーザーは、あるオブジェクト或いはオブジェクトの種類を要求する資格を与えられる。一つの方法は、全てのユーザーを全てのクライアントからマスターデータサーバー上に存在させることである。ユーザーの権限は、通常通りにマスターデータサーバー上で与えることができる。この方法は、システム管理を増大させる傾向がある。他の方法は、全ての権限の確認をクライアント上でさせ、マスターデータサーバーに要求された全てのデータを戻させることである。この方法は、ユーザー管理の観点からはより簡単であるが、整合性のある権限の概念を実施することがより難しくなる。
[Check permissions]
The user plays an important role in checking authority. The user is entitled to request an object or object type. One way is to have all users on the master data server from all clients. User rights can be granted on the master data server as usual. This method tends to increase system management. Another way is to have all authorization checks on the client and the master data server to return all requested data. While this method is simpler from a user management perspective, it makes it more difficult to implement a consistent authority concept.
マスターデータサーバーは、2段階の権限アーキテクチャを使用する。第1段階では、マスターデータサーバーは、クライアントシステムに権限を割り当てる。第2段階では、クライアントシステムは、さらに、クライアントのユーザー或いはクライアント上で実行されている処理に権限のレベルを割り当てる。例えば、販売クライアントシステムは、販売データを変更する権限と同様に、一般的なデータと販売データを読む権限を持つことができる。他のクライアントシステムは、販売データを変更する権限を持たずに、一般的なデータと販売データを読むための権限を持つことができる。販売クライアントシステムの特定のユーザーは、一般的なデータと特定の製品に関する販売データを読む権限を与えられ得る。あるクライアント上のユーザーは、クライアントがマスターデータをアクセスする際に持っているより高位の権限レベルを持つことはできない。 The master data server uses a two-level authority architecture. In the first stage, the master data server assigns authority to the client system. In the second stage, the client system further assigns a level of authority to the client user or the processing being executed on the client. For example, a sales client system can have the authority to read general data and sales data, as well as the authority to change sales data. Other client systems can have the authority to read general data and sales data without having the authority to change the sales data. A particular user of a sales client system may be authorized to read general data and sales data for a specific product. A user on a client cannot have a higher authority level than the client has to access master data.
上述した方法は、データがクライアントを通してアクセスされる際に使用されるものである。ユーザーがマスターデータサーバーに直接に航行するときは、マスターデータサーバー上でユーザーとしてログオンする必要がある。そのユーザーには、ユーザーの現状に基づいて、あるレベルの権限が認められる。 The method described above is used when data is accessed through a client. When a user navigates directly to the master data server, it is necessary to log on as a user on the master data server. The user is granted a certain level of authority based on the user's current status.
[マスターデータ管理の結果]
以下で、データを保存するためにマスターデータサーバーを用いたいくつかの結果を説明する。
[Results of master data management]
The following describes some results of using a master data server to store data.
マスターデータサーバーは多くのクライアントの要求に合致するように設計される。マスターデータソフトウェアは、クライアントサイトにおいて設定の前に知られていない属性の保存ができるように柔軟に設計される。SAPが提供するEasy Extension Workbenchを用いて、全てのマスターデータで同様の方法を用いることができる。 The master data server is designed to meet the demands of many clients. The master data software is flexibly designed to allow storage of attributes that are not known prior to configuration at the client site. The same method can be used for all master data using the Easy Extension Workbench provided by SAP.
整合性を調べる枠組みは、クライアントがデータの整合性を調べることができるように提供される。 A framework for checking consistency is provided so that the client can check the consistency of the data.
ソフトウェアは、マスターデータの保存が、システムの接続に応じて、局所であるいは遠隔で実行することができるように、混在したやり方で書かれる。 The software is written in a mixed manner so that the storage of master data can be performed locally or remotely depending on the connection of the system.
[原則]
表1は、中央マスターデータサーバーへの動的アクセスを支援するための原則の例を示している。
[principle]
Table 1 shows an example of principles for supporting dynamic access to a central master data server.
マスターデータサーバーが維持管理するマスターデータベース内の中央にマスターデータが保存されるシステムを実現することには、いくつかの危険がある。統合サーバーとマスターデータサーバーは、高い有用性(絶対安全性)を持つことが必要である。もしマスターデータサーバーが利用可能でなければ、マスターデータに基づく処理はもはや実行することができない。マスターデータサーバーの故障によって起こる損害を軽減するために、局在キャッシング機構がクライアント上に入れられる。マスターデータの誤りによって処理は停止する。従って、マスターデータのマッピングは、絶対に誤りがあってはならない。全てのオブジェクトは、正確にマッピングをし、全ての必要な属性は正確にマッピングをしなくてはならない。システム間のトランザクションの整合性は、達成するのが難しい。データは、2つの相の委任を必要としないようにモデル化されるべきである。クライアントにおけるアプリケーションのカスタム化は、調和されなくてはならない。マスターデータのモデルと実現は、全てのクライアントに特別な属性を与えることができるような方法でマスターデータを拡張する柔軟性を提供する必要がある。 There are several dangers in realizing a system in which master data is stored centrally in a master database maintained by the master data server. The integration server and master data server must have high usability (absolute security). If the master data server is not available, processing based on the master data can no longer be performed. To mitigate the damage caused by the failure of the master data server, a local caching mechanism is put on the client. Processing stops due to an error in the master data. Therefore, the mapping of master data must never be wrong. All objects must be mapped correctly and all necessary attributes must be mapped correctly. Transaction consistency between systems is difficult to achieve. Data should be modeled so that it does not require delegation of two phases. Application customization at the client must be harmonized. Master data models and implementations need to provide the flexibility to extend master data in such a way that every client can be given special attributes.
マスターデータへの動的アクセスに対する処理は、ディジタル電子回路、あるいはコンピュータハードウェア、あるいはファームウェア、あるいはソフトウェア、あるいはそれらの組み合わせによって実現することができる。マスターデータへの動的アクセスのための装置は、情報手段内、例えば機械読み取り可能な保存装置、あるいはプログラム可能なプロセッサで実行する伝搬信号内で、はっきりと具現化されるコンピュータプログラム製品内で実現することができる。マスターデータへの動的アクセスのための方法の段階は、入力データ上で動作し出力を生成することによって、本発明の機能を実行する命令のプログラムを実行するプログラム可能なプロセッサによって実行することができる。マスターデータへの動的アクセスの処理は、有利なことに、データと命令をそこから受け取り、データと命令をそこへ送るように結合される少なくとも一つのプログラム可能なプロセッサと、データ保存システムと、少なくとも一つの入力装置と、少なくとも一つの出力装置とを含んだプログラム可能なシステム上で実行可能な一つあるいは二つ以上のコンピュータプログラム内で実行することができる。コンピュータプログラムは、ある動作を実行するか、ある結果を引き出すために、コンピュータ内で直接或いは間接に使用できる一組の命令である。コンピュータプログラムは、いかなる形態のプログラミング言語で書くことができ、その中には、コンパイルされたりインタープリットされた言語が含まれ、またコンピュータプログラムは、いかなる形態でも配置することができ、その中には、独立型のプログラムとして、またはモジュールや部品やサブルーチンとして、またはコンピュータ環境内で使用するのに適した他のユニットが含まれる。 The processing for dynamic access to the master data can be realized by digital electronic circuits, computer hardware, firmware, software, or a combination thereof. The device for dynamic access to the master data is realized in a computer program product that is clearly embodied in an information means, for example in a machine-readable storage device or in a propagation signal running on a programmable processor. can do. Method steps for dynamic access to master data may be performed by a programmable processor executing a program of instructions that perform the functions of the present invention by operating on input data and generating output. it can. Processing of dynamic access to master data advantageously includes at least one programmable processor coupled to receive data and instructions therefrom and to send data and instructions thereto, a data storage system, It can be executed in one or more computer programs that are executable on a programmable system including at least one input device and at least one output device. A computer program is a set of instructions that can be used directly or indirectly in a computer to perform an action or derive a result. Computer programs can be written in any form of programming language, including compiled and interpreted languages, and computer programs can be arranged in any form, including And other units suitable for use as stand-alone programs or as modules, parts or subroutines, or within a computer environment.
命令のプログラムの実行のために適したプロセッサには、例として、汎用あるいは専用のマイクロプロセッサや、単独のプロセッサあるいは何らかの種類のコンピュータの多数のプロセッサの内の一つが含まれる。一般的に、一つのプロセッサは、読み出し専用のメモリあるいはランダムアクセスメモリあるいはその両方から、命令とデータを受け取る。コンピュータの必須要素は、命令を実行するためのプロセッサと、命令とデータを格納するための一つあるいは二つ以上のメモリとである。一般的に、コンピュータは、またデータファイルを保存するための一つあるいは二つ以上の大容量保存装置を含んでいるか、それと通信するために動作可能に結合され、該装置には、内部ハードディスクや移動可能なディスクなどの磁気ディスクと、光磁気ディスクと、光ディスクが含まれる。明白にコンピュータプログラム命令とデータを具現化するのに適した保存装置には、あらゆる形態の不揮発性メモリが含まれるが、その中には一例として、EPROMやEEPROMやフラッシュメモリ素子などの半導体メモリ素子や、内部ハードディスクと移動可能なディスクなどの磁気ディスクや、光磁気ディスクや、CD−ROMやDVD−ROMディスクが含まれる。プロセッサとメモリは、ASIC(特定用途向け集積回路)が補完したり、その中に組み込まれたりすることができる。 Suitable processors for execution of a program of instructions include, by way of example, a general purpose or special purpose microprocessor, a single processor or one of a number of processors of any type of computer. In general, one processor receives instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memories for storing instructions and data. Generally, a computer also includes or is operably coupled to communicate with one or more mass storage devices for storing data files, including an internal hard disk or A magnetic disk such as a movable disk, a magneto-optical disk, and an optical disk are included. Clearly suitable storage devices for embodying computer program instructions and data include all forms of non-volatile memory, including, for example, semiconductor memory devices such as EPROM, EEPROM, and flash memory devices. And a magnetic disk such as an internal hard disk and a movable disk, a magneto-optical disk, a CD-ROM, and a DVD-ROM disk. The processor and memory can be supplemented by, or incorporated in, an ASIC (Application Specific Integrated Circuit).
その種のコンピュータの一例が図10に示され、そこでマスターデータの動的アクセスのための処理を実現するのに適した処理システム256のブロックが示される。システム256には、プロセッサ258と、ランダムアクセスメモリ(RAM)260と、プログラムメモリ262(例えば、フラッシュROMのような、書き込み可能な読み出し専用メモリ(ROM))と、ハードドライブ制御器264と、ビデオ制御器266と、プロセッサ(CPU)バス270に結合された入力/出力(I/O)制御器268が含まれる。システム256は、例えばROMに予めプログラムしておくことができるし、また他のデータ源から(例えば、フロッピディスク(商標登録)やCD−ROMや他のコンピュータから)プログラムをロードすることでプログラムする(また、予めプログラムする)こともできる。
An example of such a computer is shown in FIG. 10, where a block of a
ハードドライブ制御器264は、マスターデータソフトウェアを実行するためのプログラムを含んだ、実行可能なコンピュータプログラムを保存するのに適したハードディスク272へ結合される。ビデオ制御器266は、グラフィカルユーザーインターフェイスを表示するための表示装置274に結合される。I/O制御器268は、I/Oバス276を用いてI/Oインターフェイス278へ結合される。I/Oインターフェイス278は、シリアルリンクやローカルエリアネットワークや無線リンクや並列リンクなどの通信リンクを通して、データをアナログあるいはディジタルの形式で受け取りまた送る。
The
さらにI/Oバス276に結合されるのは、キーボード280である。代わりに、別々の接続(別々のバス)をI/Oインターフェイス278とキーボード280に対して使用することができる。マスターデータの動的アクセスの処理は、データサーバーのようなバックエンド部品を含むか、あるいはアプリケーションサーバーまたはインターフェイスサーバーのようなミドルウェア部品を含むか、あるいはグラフィカルユーザーインターフェイスやインターネットブラウザやそれらの組み合わせを持つクライアントコンピュータのようなフロントエンド部品を含むコンピュータシステム内で実現することができる。システムの部品は、いかなる形態でも、あるいは通信ネットワークのようなディジタルデータ通信の媒体によって接続することができる。通信ネットワークの例には、例えば、ローカルエリアネットワーク(“LAN”)やワイドエリアネットワーク(“WAN”)やインターネットが含まれる。
Also coupled to the I /
コンピュータシステムには、クライアントとサーバーが含まれる。クライアントとサーバーは、一般的に互いに離れており、典型的には、既述したようなネットワークを通して相互作用をする。クライアントとサーバーの関係は、それぞれのコンピュータ上で実行され、互いにクライアント−サーバー関係を持つコンピュータプログラムに基づいて発生する。 The computer system includes a client and a server. A client and server are generally remote from each other and typically interact through a network as previously described. The relationship between the client and the server is generated based on computer programs that are executed on each computer and have a client-server relationship with each other.
本発明は、特定の実施形態について説明してきた。他の実施形態は、添付の特許請求の範囲の範囲内にある。例えば、本発明の段階は、別の順序で実行することができ、それでも望む結果を得ることができる。 The present invention has been described with respect to particular embodiments. Other embodiments are within the scope of the appended claims. For example, the steps of the present invention can be performed in a different order and still achieve the desired results.
本発明の多くの実施形態を説明してきた。それでもなお、様々な変更が本発明の趣旨と範囲とから離れずに可能であることは理解されよう。例えば、統合サーバー109とマスターデータサーバー110は、物理的に同じコンピュータの中にあって良い。本発明は、二つのコンピュータ間で共有されるあらゆる種類のデータに適用でき、“マスターデータ”に限定するものではない。データは、一般的なデータあるいはアプリケーションデータで良い。従って、他の実施形態は、添付の特許請求の範囲の範囲内にある。
A number of embodiments of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention. For example, the
100…混成システム
102〜106…クライアントシステム
109…統合サーバー
110…マスターデータサーバー
112…マスターデータベース
114…クライアント
116…販売アプリケーション
118…製造アプリケーション
120…製品ユーザーインターフェイス
124…製品サービス層
126…交換インターフェイス
128…アプリケーションA
130…アプリケーションB
132…製品ユーザーインターフェイス
134…製品サービス層
DESCRIPTION OF
130: Application B
132 ...
Claims (41)
識別子によって識別されるオブジェクトと関連する識別子とデータとをサーバーが受け取る段階と、
各クライアントに対して、識別子とデータがクライアントが定義した規則一式に適合するかをサーバーが確認する段階と、
識別子とデータとをサーバーがデータベース内に入力する段階と
を含み、前記サーバーは、クライアントにアクセスできるデータベースを維持管理するように構成されていることを特徴とする方法。 In the method of maintaining data,
Receiving an identifier and data associated with the object identified by the identifier;
For each client, the server verifies that the identifier and data conform to the set of rules defined by the client;
The server entering the identifier and data into the database, wherein the server is configured to maintain a database accessible to the client.
識別子にリンクされたデータベース内のデータをサーバーがクライアントの許容範囲の形式に変換する段階と
を備えることを特徴とする請求項7記載の方法。 In addition, the client sends a request to the server requesting data linked to the identifier;
8. The method of claim 7, comprising the step of the server converting data in the database linked to the identifier into a client acceptable format.
どのクライアントがデータベースにアクセスできるかを第2サーバーが特定する段階と、
第2サーバーが、データベースにアクセスすることができると特定されたクライアントにその要求を回す段階と
をさらに備え、該要求は、識別子とデータの特定を要求することを特徴とする請求項1記載の方法。 The server sends a request to the second server;
The second server determines which clients can access the database;
The second server further comprises the step of routing the request to a client identified as being able to access the database, the request requesting identification of the identifier and data. Method.
識別子とデータベースが、クライアントが定義した規則一式に適合するかどうかをサーバーが確認する要求をクライアントに送る段階と、
もしある特定のクライアントが応答しなければ、サーバーが、そのクライアントを免責摘要表に載せて、その識別子とデータが特定のクライアントが定義する規則一式に適合することが確認できなかったことを知らせる段階と
を備えることを特徴とする請求項1記載の方法。 In addition, for each client,
Sending a request to the client to verify that the identifier and database meet the set of rules defined by the client;
If a particular client does not respond, the server places the client on the disclaimer table and informs that its identifier and data could not be verified as conforming to the set of rules defined by the particular client The method of claim 1, comprising:
あるオブジェクトに関連するデータ一式の変更の要求をクライアントがサーバーに送る段階と、
サーバーがそのデータ一式を固定化したのでクライアントだけがそのデータ一式を変更できるというメッセージをクライアントが受け取る段階と、
変更したデータをデータベースに保存するために、変更したデータ一式をクライアントがサーバーに送る段階と、
変更したデータがデータベースに保存されたというメッセージをクライアントが受け取る段階と、
他のクライアントの各々に対して、変更したデータにアクセスできるのは他のどのクライアントかをサーバーが決定する段階と、
変更したデータが、クライアントが定義した規則一式に適合することをサーバーが確認する段階と
を備え、また、前記データ一式はサーバーに維持管理されるデータベース内に保存されることを特徴とする方法。 In a method for maintaining data,
The client sends a request to the server for a set of data related to an object;
The client receives a message that only the client can modify the data set because the server has fixed the data set,
Sending the modified set of data to the server to store the modified data in the database;
The client receives a message that the modified data has been saved to the database,
For each of the other clients, the server determines which other clients can access the modified data;
A server confirming that the modified data conforms to a set of rules defined by the client, and wherein the set of data is stored in a database maintained by the server.
プログラム制御可能なプロセッサに対し、
サーバーに、識別子および識別子によって識別されるオブジェクトに関連するデータを受け取らせ、
各クライアントに対して、識別子とデータがクライアントが定義した規則一式に適合するかをサーバーに確認させ、
サーバーに、識別子とデータとをデータベース内に入れさせる
ように動作可能な命令を備えることを特徴とするコンピュータプログラムを保存した機械読み取り可能な媒体。 In a machine readable medium storing a computer program for dynamic access of master data stored in a database accessible to a client,
For programmable processors,
Causing the server to receive data associated with the identifier and the object identified by the identifier;
For each client, let the server check that the identifier and data conform to the set of rules defined by the client,
A machine-readable medium storing a computer program comprising instructions operable to cause a server to enter an identifier and data into a database.
サーバーに、各クライアントに対して、識別子とデータがクライアントの定義した規則一式に適合するかどうかを確認する要求をクライアントへ送らせ、もし特定のクライアントが応答しなければ、そのクライアントを免責摘要表に載せて、その識別子とデータが特定のクライアントが定義する規則一式に適合することが確認できなかったことを知らせるように動作することが可能であることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。 The instructions are for program-controllable processors:
Have the server send each client a request to verify that the identifier and data conform to the set of rules defined by the client, and if a particular client does not respond, list that client 23. The computer program product of claim 22, wherein the computer program is operable to inform that the identifier and data have not been confirmed to conform to a set of rules defined by a particular client. A machine-readable medium on which is stored.
クライアントとサーバーを持ったコンピュータシステムに対して、
第1クライアントに、オブジェクトに関連したデータ一式の変更に対してサーバーへ要求を送らせ、
サーバーがそのデータ一式を固定化したのでクライアントだけがそのデータ一式を変更できるというメッセージをサーバーに受け取らせ、
第1クライアントに、データをデータベースに保存するために、変更したデータ一式をサーバーへ送らせ、
第1クライアントに、変更したデータ一式がデータベースに保存されたというメッセージを受け取らせる
ように動作可能な命令を備え、
前記サーバーは、他のクライアントのそれぞれに対して、変更されたデータ一式にアクセスできる他のクライアントはどれかを決定し、かつ変更されたデータ一式が、クライアントが定義した規則一式に適合することを確認することを特徴とするコンピュータプログラムを保存した機械読み取り可能な媒体。 In a machine readable medium storing a computer program for dynamic access of master data,
For a computer system with a client and server,
Have the first client send a request to the server for changes to the set of data associated with the object,
Let the server receive a message that only the client can change the data set because the server has fixed the data set,
Have the first client send a modified set of data to the server to save the data in the database,
With instructions operable to cause the first client to receive a message that the modified set of data has been stored in the database;
The server determines for each of the other clients which other clients can access the modified set of data and that the modified set of data conforms to the set of rules defined by the client. A machine-readable medium storing a computer program characterized by being confirmed.
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US40813002P | 2002-09-03 | 2002-09-03 | |
US41929202P | 2002-10-16 | 2002-10-16 | |
US42968802P | 2002-11-27 | 2002-11-27 | |
US10/365,672 US20040044730A1 (en) | 2002-09-03 | 2003-02-12 | Dynamic access of data |
US10/367,102 US7236973B2 (en) | 2002-11-27 | 2003-02-13 | Collaborative master data management system for identifying similar objects including identical and non-identical attributes |
US10/367,103 US7509326B2 (en) | 2002-09-03 | 2003-02-13 | Central master data management |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004569798A Division JP4456005B2 (en) | 2002-09-03 | 2003-09-03 | Dynamic access of data |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009266243A true JP2009266243A (en) | 2009-11-12 |
JP4665042B2 JP4665042B2 (en) | 2011-04-06 |
Family
ID=33514986
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004569798A Expired - Lifetime JP4456005B2 (en) | 2002-09-03 | 2003-09-03 | Dynamic access of data |
JP2009144735A Expired - Lifetime JP4665042B2 (en) | 2002-09-03 | 2009-06-17 | Dynamic access of data |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004569798A Expired - Lifetime JP4456005B2 (en) | 2002-09-03 | 2003-09-03 | Dynamic access of data |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1537500A2 (en) |
JP (2) | JP4456005B2 (en) |
AU (1) | AU2003264781A1 (en) |
WO (1) | WO2004023339A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022539722A (en) * | 2019-06-26 | 2022-09-13 | 中▲興▼通▲訊▼股▲ふぇん▼有限公司 | Systems and methods for implementing incremental data matching |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8200701B2 (en) | 2007-04-19 | 2012-06-12 | Itelligence A/S | Handling of data in a data sharing system |
US8301856B2 (en) | 2010-02-16 | 2012-10-30 | Arm Limited | Restricting memory areas for an instruction read in dependence upon a hardware mode and a security flag |
EP3726810B1 (en) * | 2019-04-16 | 2023-12-06 | ABB Schweiz AG | System and method for interoperable communication of automation system components |
CN114125049B (en) * | 2021-11-17 | 2023-08-25 | 珠海优特电力科技股份有限公司 | Telemetry message processing method, device, equipment and storage medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0765032A (en) * | 1993-08-27 | 1995-03-10 | Toshiba Corp | Information processing system having data base language converting function |
JPH09282210A (en) * | 1996-04-15 | 1997-10-31 | Hitachi Ltd | Method and system for monitoring data base |
JPH10269184A (en) * | 1997-03-28 | 1998-10-09 | Hitachi Ltd | Security management method for network system |
JPH11259346A (en) * | 1998-03-12 | 1999-09-24 | Mitsubishi Electric Corp | Transaction processing method for client/server type data base system and client/server device for client/ server type data base |
JP2001331362A (en) * | 2000-03-17 | 2001-11-30 | Sony Corp | File conversion method, data converter and file display system |
JP2002007187A (en) * | 2000-04-27 | 2002-01-11 | Internatl Business Mach Corp <Ibm> | System for transferring related data object in distributed data storage environment and method for the same |
JP2002032248A (en) * | 2000-07-19 | 2002-01-31 | Ricoh Co Ltd | Providing system of version of transaction in data base inquiry processing and data base inquiry processing system using version provided by the same system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5859972A (en) * | 1996-05-10 | 1999-01-12 | The Board Of Trustees Of The University Of Illinois | Multiple server repository and multiple server remote application virtual client computer |
US6236997B1 (en) * | 1997-06-23 | 2001-05-22 | Oracle Corporation | Apparatus and method for accessing foreign databases in a heterogeneous database system |
-
2003
- 2003-09-03 WO PCT/IB2003/004416 patent/WO2004023339A2/en active Application Filing
- 2003-09-03 EP EP03794020A patent/EP1537500A2/en not_active Ceased
- 2003-09-03 AU AU2003264781A patent/AU2003264781A1/en not_active Abandoned
- 2003-09-03 JP JP2004569798A patent/JP4456005B2/en not_active Expired - Lifetime
-
2009
- 2009-06-17 JP JP2009144735A patent/JP4665042B2/en not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0765032A (en) * | 1993-08-27 | 1995-03-10 | Toshiba Corp | Information processing system having data base language converting function |
JPH09282210A (en) * | 1996-04-15 | 1997-10-31 | Hitachi Ltd | Method and system for monitoring data base |
JPH10269184A (en) * | 1997-03-28 | 1998-10-09 | Hitachi Ltd | Security management method for network system |
JPH11259346A (en) * | 1998-03-12 | 1999-09-24 | Mitsubishi Electric Corp | Transaction processing method for client/server type data base system and client/server device for client/ server type data base |
JP2001331362A (en) * | 2000-03-17 | 2001-11-30 | Sony Corp | File conversion method, data converter and file display system |
JP2002007187A (en) * | 2000-04-27 | 2002-01-11 | Internatl Business Mach Corp <Ibm> | System for transferring related data object in distributed data storage environment and method for the same |
JP2002032248A (en) * | 2000-07-19 | 2002-01-31 | Ricoh Co Ltd | Providing system of version of transaction in data base inquiry processing and data base inquiry processing system using version provided by the same system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022539722A (en) * | 2019-06-26 | 2022-09-13 | 中▲興▼通▲訊▼股▲ふぇん▼有限公司 | Systems and methods for implementing incremental data matching |
JP7328371B2 (en) | 2019-06-26 | 2023-08-16 | 中興通訊股▲ふん▼有限公司 | Systems and methods for implementing incremental data matching |
US11941023B2 (en) | 2019-06-26 | 2024-03-26 | Zte Corporation | System and method for implementing incremental data comparison |
Also Published As
Publication number | Publication date |
---|---|
JP4665042B2 (en) | 2011-04-06 |
AU2003264781A1 (en) | 2004-03-29 |
JP4456005B2 (en) | 2010-04-28 |
EP1537500A2 (en) | 2005-06-08 |
WO2004023339A2 (en) | 2004-03-18 |
WO2004023339A3 (en) | 2004-12-16 |
JP2005537594A (en) | 2005-12-08 |
AU2003264781A8 (en) | 2004-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040044730A1 (en) | Dynamic access of data | |
US9256655B2 (en) | Dynamic access of data | |
JP2996197B2 (en) | Document sharing management method | |
US7877682B2 (en) | Modular distributed mobile data applications | |
US6754672B1 (en) | System and method for efficient integration of government administrative and program systems | |
TW400494B (en) | Determining how changes to underlying data affect cached objects | |
CN100428228C (en) | System and method for caching data for a mobile application | |
US7401085B2 (en) | System and method for controlling the release of updates to a database configuration | |
US20050080804A1 (en) | System and method for maintaining componentized content | |
JP2003528391A (en) | Method and apparatus for storing changes to file attributes without having to store additional copies of file contents | |
JP4665042B2 (en) | Dynamic access of data | |
US8819072B1 (en) | Promoting data from structured data files | |
WO2004057478A2 (en) | Managing data consistency | |
US7716299B2 (en) | Determining the configuration of a data processing system existing at the time a transaction was processed | |
CN100568228C (en) | dynamic access to data | |
JP3495641B2 (en) | Updated map information distribution system, updated map information distribution server system, updated map information distribution client system, method, and recording medium recording the method | |
JP3673189B2 (en) | Write control method, structured document management apparatus, structured document editing apparatus, and program | |
US6954895B1 (en) | Method and apparatus for using and storing objects | |
US20080155559A1 (en) | Portal eventing directory | |
KR100576487B1 (en) | System and method for maintaining componentized content | |
EP1630695A2 (en) | Dynamic access of data | |
US20070156631A1 (en) | Synchronization of transactional applications and analytical applications | |
JP4403065B2 (en) | Information processing method and apparatus | |
JPH11110322A (en) | Network system and its managing method | |
CA2475325A1 (en) | System and method for maintaining componentized content |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100126 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100426 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100608 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100908 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4665042 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |