JP2009266243A - Dynamic access of data - Google Patents

Dynamic access of data Download PDF

Info

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
Application number
JP2009144735A
Other languages
Japanese (ja)
Other versions
JP4665042B2 (en
Inventor
Holger Gockel
ホールガー・ゴッケル
Wolfgang Kalthoff
ヴォルフガング・カルトフ
Thomas Vogt
トーマス・フォークト
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SAP SE
Original Assignee
SAP SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/365,672 external-priority patent/US20040044730A1/en
Priority claimed from US10/367,102 external-priority patent/US7236973B2/en
Priority claimed from US10/367,103 external-priority patent/US7509326B2/en
Application filed by SAP SE filed Critical SAP SE
Publication of JP2009266243A publication Critical patent/JP2009266243A/en
Application granted granted Critical
Publication of JP4665042B2 publication Critical patent/JP4665042B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data 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

<P>PROBLEM TO BE SOLVED: To provide dynamic access to data stored in a database maintained and managed by a server. <P>SOLUTION: A client sends a request to the server to access the data stored in the database. A first set of data is retrieved from the database and mapped to a second set of data on the basis of a set of mapping rules that is defined by the client. The client then receives the second set of data. <P>COPYRIGHT: (C)2010,JPO&INPIT

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.

特開平7−65032号公報JP-A-7-65032

一態様において、本発明は広くデータに動的にアクセスする方法に使用される。本方法には、サーバーが維持管理するデータベース内に保存されたデータにアクセスするためにクライアントがサーバーに要求を送る段階と、データベースからデータの第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 is a diagram of a hybrid system. クライアントとサーバーの詳細図である。It is a detailed view of a client and a server. マスターデータの整合性を確認するための処理を示す図である。It is a figure which shows the process for confirming the consistency of master data. マスターデータの整合性を確認するための処理を示す図である。It is a figure which shows the process for confirming the consistency of master data. マスターデータの整合性を確認するための処理を示す図である。It is a figure which shows the process for confirming the consistency of master data. データのエントリを示す図である。It is a figure which shows the entry of data. 複合型ソフトウェアに対するアーキテクチャを示す図である。It is a figure which shows the architecture with respect to composite type | mold software. 複合型アーキテクチャを示す図である。FIG. 2 is a diagram illustrating a composite architecture. プロキシを用いてマスターデータにアクセスするアプリケーションを示す図である。It is a figure which shows the application which accesses master data using a proxy. コンピュータシステムを示す図である。It is a figure which shows a computer system.

図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 hybrid system 100 includes a master data server (MDS) 110, an integration server 109, and client systems 102-106. The master data server 110 maintains one master database 112, and the client systems 102 to 106 dynamically access the master database 112 synchronously through the integration server 109 and the master data server 110. The client systems 102-106 match the data stored in the database 112 by a consistency check process when the data is first stored in the master data 112. When data is updated by the master data server 110 or the client systems 102-106, the changes are visible to all of the client systems 102-106. The advantage of using a single master database 112 is that management overhead is reduced and the problem of synchronization of different databases is eliminated.

“同期する”及び“動的”の言葉は、クライアントシステムで実行される処理が情報を必要とする時には、クライアント側で局所的にデータを保存せずにいつでもマスターデータベース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 master database 112 at any time without storing data locally on the client side. Means. The process may be a batch process executed in the background, or may be a process adapted to allow a user to access, browse and maintain master data. Different processes require different data formats, and data transferred between the client system and the master data server is dynamically mapped from one format to another depending on the configuration of the system. Each client system can be configured independently of the other systems, and each system can view and process data in the master database 112 separately. The integration server 109 dynamically maps data so as to conform to the data format defined by each client system and the master data server.

図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, client 114 is used to represent any of client systems 102-106. For example, different application programs such as a sales application 116 and a product application 118 that accesses data related to the product are executed on the client 114. Application programs 116 and 118 access functions provided by the product service layer 124. Product user interface 120 interacts with product service layer 124 to provide an image representation of user data. The product service layer 124 is specific to the client 114 and provides the ability to process product data according to the product model associated with the client 114. For example, client 114 may have an application that is used to manage client relationships. These applications require data related to the product that is transferred to and from the client. The product data used by the application executed on the client 114 includes sales data, but does not include financial data. Client 114 does not store any data related to the product. Instead, all requests to access such data are routed to the master data server 110 through the exchange interface 126 in the integration server 109.

マスターデータサーバー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 master data server 110 is to maintain and manage master data stored in the master database 112. Different application programs, such as applications 128 and 130 that access the master data, can be executed on the master data server 110. Applications 128 and 130 access functions provided by the product service layer 134. The product user interface 132 interacts with the product server layer 134 to provide an image representation of user data. The product service layer 134 is unique to the master data server 110 and provides a function of processing product data according to a product model associated with the master data server 110. The product service layer 134 accesses the master database 112. When an application running on the client 114 needs to access master data stored in the master database 112, the request is routed through the exchange interface 126 to the product service layer 134. The exchange interface 126 can connect to the product service layers 124 and 134 using a peer-to-peer connection.

クライアント114に関連した製品モデルは、マスターデータサーバー110と関連した製品モデルとは異なるだろう。従って、製品サービス層124が製品サービス134を通してマスターデータベース112にアクセスする時は、意味論(semantic)マッピングが必要である。   The product model associated with client 114 will be different from the product model associated with master data server 110. Thus, when the product service layer 124 accesses the master database 112 through the product service 134, semantic mapping is required.

製品サービス層124は、クライアント114のアプリケーションが使用することのできる、整合性の或るアプリケーションプログラミングインターフェイスを提供する。これによって、販売アプリケーション116と製品アプリケーション118を維持管理し更新することがより容易になる。製品サービス層はクライアントに固有のものであるため、異なるクライアントは異なる製品サービス層をもつことになる。クライアントシステムの各製品サービス層とそれの関連したアプリケーションは、他のクライアントシステムの製品サービス層とは無関係に変更したり更新したりすることができる。   Product service layer 124 provides a consistent application programming interface that can be used by applications of client 114. This makes it easier to maintain and update the sales application 116 and product application 118. Since the product service layer is unique to the client, different clients will have different product service layers. Each product service layer of a client system and its associated application can be changed or updated independently of the product service layers of other client systems.

[マスターデータの維持管理]
マスターデータが作られたり変更された時、そのデータは、クライアント上で実行されているビジネス処理と整合性があるべきである。正しく動作するよう処理するために、その処理は、それが使用するデータの整合性に依存する必要が出てくる。マスターデータが作られたり更新される時、どのクライアントがデータを使用するかは知られている。従って、データに関係する全てのクライアントは、そのデータを使用する前にデータの整合性を調べる。
[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 master database 112, the user performs a data input process 142 through the master data server 110. In this example, master data maintenance management is executed by the master data server 110. Clients A 114 and B 114 are connected to the integrated server 109. The user selects a user interface (eg, screen) to create and fix a new input for the new product <146>. As an example, the user selects the number “4711” to identify a new product. Before the new entry is saved in the master database 112, the identifier “4711” is “fixed” so that other users cannot use it to identify other products. Due to the immobilization procedure, only one person can create master data related to the identifier “4711”.

識別子によってマスターデータベース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 master database 112 by identifier, the identifier (ie, the number “4711”) matches against a scheme that defines a format that is within the allowable range of identifiers. <148>. Each of the master data server 110, the client A 114, and the client B 114 can have its own system different from other systems. For example, the master data server 110 may use a scheme that requires an identifier of less than 10 digits. Once the identifier is confirmed to match the scheme required by the master data server 110, a request is sent from the master data server 110 to the integration server 109 to examine the identifier against the scheme generated by various clients.

統合サーバー109は、クライアントが新しいデータへアクセスできるところの情報を持っている。例えば、クライアントA114とクライアントB114は共に“製品”に関連するデータにアクセスする。統合サーバー109は、体系に対して識別子を調べる要求を、関係するクライアントである、この場合、クライアントA114とクライアントB114に回す<150>。クライアントA114が識別子を確認するという要求を受け取ると、クライアントA114は、自身の体系に対して識別子を調べる<152>。もし識別子が体系に合致しなければ、誤りメッセージがマスターデータサーバー110に送られて、ユーザーが他の識別子を選ばなくてはならないことを示す。同様に、クライアントB114は、自身の体系に対して識別子を調べ<154>、もし識別子が体系に合致しなければ、誤りメッセージをマスターデータサーバー110に送る。148,152,154で調べることによって、マスターデータサーバー110とクライアントA114とクライアントB113のすべてが、サーバー110とクライアントA114とクライアントB114の各々に対して、正しい識別子を用いて新しいデータにアクセスすることができることが確実となる。   The integration server 109 has information where clients can access new data. For example, both client A 114 and client B 114 access data related to “product”. The integration server 109 sends a request for checking the identifier to the system to the client concerned, in this case, client A 114 and client B 114 <150>. When client A 114 receives a request to verify the identifier, client A 114 checks the identifier against its system <152>. If the identifier does not match the scheme, an error message is sent to the master data server 110 to indicate that the user must choose another identifier. Similarly, client B 114 checks the identifier for its scheme <154> and if the identifier does not match the scheme, it sends an error message to master data server 110. By examining at 148, 152, 154, the master data server 110, client A 114, and client B 113 can all access new data using the correct identifier for each of the server 110, client A 114, and client B 114. It is certain that it can be done.

もし、識別子の形式が確認されると、ユーザーは、製品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 master data server 110 sends a request to the integration server 109 to request confirmation of the attribute value. Integration server 109 routes the request to the associated client <160>. Upon receipt of the request, client A 114 checks the attribute value against the consistency record defined by client A 114 <162> and sends a message to master data server 110 if a rule violation occurs. For example, client A 114 may define a consistency rule that requires a basic unit of measurement with a sales unit of measurement (eg, if a sales person sells a product in a box, the sales person ) And additional information on how many products are in one box). Other consistency rules may require that prices be specified in euros.

属性の確認に関する要求を受け取ると、クライアントB144は、クライアント144が定義した規則に対して属性値を調べる<164>。例えば、整合性の規則は、未決の計画実行が無ければ製造時間のみが変更可能であることを要求する(その理由は、例えば、計画実行は一定の製造時間によって決まるからである)。   Upon receiving the request for attribute confirmation, the client B 144 checks the attribute value against the rule defined by the client 144 <164>. For example, the consistency rule requires that only the production time can be changed if there is no pending plan execution (because, for example, the planned execution is determined by a certain production time).

クライアントA114とクライアントB114が、属性がこれらクライアントが定義した規則に適合することを確認した後、ユーザーは、インターフェイス(例えば、画面)を選択して、例えば販売に関連するデータを維持管理する<166>。販売に関連する属性は、クライアントA114にのみ関係し、クライアントB114には関係しない。統合サーバー109は、どの種類の属性がどのクライアントに関係するかを追跡し続ける。ユーザーが販売に関連するデータを追加あるいは変更した後に、マスターデータサーバー110は、要求を統合サーバー109に送り、そのデータがクライアントの整合性規則に適合することを確認する。統合サーバー109は、その要求を、本例ではクライアントA114である関連するクライアントに回す<168>。その要求を受け取ると、クライアントA114は、販売に関連するデータを、クライアントA114が定義した販売データに関連する整合性規則と照合する。もしそのデータが整合性規則と整合していれば、マスターデータサーバー110は、新しいデータをマスターデータベース112へ保存する<172>。   After Client A 114 and Client B 114 confirm that the attributes conform to the rules defined by these clients, the user selects an interface (eg, a screen) to maintain, for example, data related to sales <166. >. The attributes related to sales are related only to client A 114 and not related to client B 114. The integration server 109 keeps track of which types of attributes are associated with which clients. After the user adds or changes data related to sales, the master data server 110 sends a request to the integration server 109 to confirm that the data meets the client's integrity rules. The integration server 109 routes the request to the associated client, which in this example is client A 114 <168>. Upon receipt of the request, client A 114 checks the sales related data with the consistency rules associated with the sales data defined by client A 114. If the data is consistent with the consistency rules, the master data server 110 stores the new data in the master database 112 <172>.

マスターデータも、維持管理ダイアログを実行するインターフェイスを用いるクライアントのユーザーが維持管理することができる。インターフェイスは、クライアントに関連するデータのみが表示され維持管理されるように設計することができる。   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 maintenance management process 174 is executed when the client updates data in the master database 112. In this example, the client A 114 desires to update data related to the product 4711. Client A 114 "opens" product 4711 <176>, which shows a graphical user interface that allows the user to enter the identifier "product 4711" to identify what data needs to be updated Let's mean.

クライアントA114は、要求を統合サーバー109に送り、これがマスターデータサーバー110からのデータを要求する<178>。要求を受け取ると、マスターデータサーバー110は製品4711に関連するデータを読んで固定する<180>。固定化は、どのクライアントがデータベースを変更したかに係わらず、マスターデータサーバー110が行う。マスターデータサーバー110は、この情報が、データへのアクセスをしようとしている他のクライアントと交信することができるように、どのクライアントがデータベースを固定化したかを知る必要がある。このデータは統合サーバー109に送られ、データはクライアントA114の形式を持ったデータにマッピングされる。一例として、クライアントA114は、販売に関連するデータを維持管理する。クライアント114は、販売に関連するデータのみを示す画面を表示するのにグラフィカルユーザーインターフェイスを使う。クライアントA114にいるユーザーは、販売に関連するデータの維持管理(例えば、訂正したり削除したり)を進める<182>。更新されたデータは、他のクライアントとマスターデータサーバー110が定義した規則に対する整合性を調べられる。   Client A 114 sends a request to integration server 109, which requests data from master data server 110 <178>. Upon receipt of the request, the master data server 110 reads and fixes data associated with the product 4711 <180>. Fixing is performed by the master data server 110 regardless of which client has changed the database. The master data server 110 needs to know which client has locked the database so that this information can communicate with other clients that are trying to access the data. This data is sent to the integration server 109, and the data is mapped to data having the format of the client A 114. As an example, the client A 114 maintains and manages data related to sales. The client 114 uses a graphical user interface to display a screen showing only data related to sales. The user at client A 114 proceeds with maintenance (eg, correction or deletion) of data related to sales <182>. The updated data is checked for consistency with rules defined by other clients and the master data server 110.

クライアントA114は、要求をサーバー109に送って、確認処理を始める。統合サーバー109は、この要求を関連するクライアントへ回す。この例では、販売データクライアントB144に関連していないので、統合サーバー109はその要求をクライアントB144には送らない。統合サーバー109は、要求をマスターデータサーバー110へ送るが、このサーバーは要求に応答してマスターデータサーバー110が整合性のために定義した整合性規則に対して、属性を照合する<188>。マスターデータサーバー110と他のクライアントは、更新済みデータが整合性規則に整合していることを示すメッセージを送り、また、マスターデータサーバーが更新済みデータをマスターデータベース112へ保存することを要求するメッセージをマスターデータサーバー110へ送る。   The client A 114 sends a request to the server 109 and starts the confirmation process. The integration server 109 routes this request to the associated client. In this example, the integration server 109 does not send the request to the client B 144 because it is not related to the sales data client B 144. The integration server 109 sends the request to the master data server 110, which responds to the request by matching the attributes against the consistency rules that the master data server 110 has defined for consistency <188>. The master data server 110 and other clients send a message indicating that the updated data is consistent with the integrity rules, and request that the master data server store the updated data in the master database 112. To the master data server 110.

マスターデータサーバー110は、多くのアプリケーションあるいは異なるクライアント上で実行される処理に必要なデータを維持管理する。オブジェクトに関連したデータを維持管理するクライアント(あるいは、クライアントを使用するユーザー)は、全てのデータを変更する資格を与えられたり承認されたりはせず、自身の処理(例えば、販売)に関するデータのみを維持管理することができる。統合サーバー109は、ユーザーが自身の処理に関連するデータを持つ画面のみにアクセスすることができ、従ってこの画面に対して整合性の要求を扱うことができるだけであるように構成される。維持管理されてきたデータ(及びデータに関連するオブジェクト)は、この画面に対して使用することができる(例えば、この画面に関連する処理に対して使用することができる)。そのデータは、まだ作られていない画面(例えば、未来の計画)においては使用することができない。   The master data server 110 maintains and manages data required for processing executed on many applications or different clients. Clients that maintain data related to objects (or users who use clients) are not entitled or authorized to change all data, only data related to their processing (eg sales) Can be maintained. The integration server 109 is configured such that the user can only access a screen having data related to his process, and therefore can only handle consistency requests for this screen. Data that has been maintained (and the objects associated with the data) can be used for this screen (eg, can be used for processing related to this screen). The data cannot be used on screens that have not yet been created (eg, future plans).

整合性を照合する必要のあるクライアントは、統合サーバー109によって決定される。統合サーバー109は、照合の要求を、実行時にクライアントへ回し、“了解メッセージ”あるいは整合性の誤りを記載したメッセージの集積のいずれかの、各クライアントの結果を戻す。誤りは、ユーザーがデータを変更して整合性を保証できるように表示される。   The clients that need to be checked for consistency are determined by the integration server 109. The integration server 109 routes the verification request to the client at runtime and returns the result of each client, either an “acknowledgement message” or a collection of messages describing the consistency error. Errors are displayed so that the user can change the data to ensure consistency.

整合性の照合処理の間、もしクライアントが応答しないと、クライアントは、免責摘要表に載せられ、照合処理は、残りのクライアントに対して処理を続ける。これによって、マスターデータの維持管理は、クライアントのいくつかの間違いのせいで妨害されることは絶対に無い。   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 data maintenance process 194 occurs when the client does not respond. The master data server 110 maintains data related to the product 4711 <196> and sends a request to the integration server 109 to confirm consistency. Integration server 109 routes the request to the associated client <198>. Upon receipt of this request, client A 114 checks the attributes <200>. When client B 144 receives this request, it is considered that the client B 144 also checks the attribute <202>. However, for several reasons (eg, shutdown), client B 144 may not respond <204>. The integration server 109 collects all responses from the client <206> and finds that no response has been received from the client B 144. The integration server 109 sends the responses collected from the clients to the master data server 110.

マスターデータサーバー110は、クライアントB144を免責摘要表に加えて<208>、クライアントB144が、更新済みデータがクライアントB144が要求した整合性規則と整合性があるかどうかを確かめられていないことを示す。マスターデータサーバー110は、更新済みデータをマスターデータベース112へ保存して<208>、クライアントB144を調べる仕事の流れを始める<212>。この仕事の流れは、ある時間が過ぎた後に、手動もしくは自動でクライアントB144を調べることができる、あるいはクライアントB144が読み出し要求を送った時などの、クライアントとの通信が可能であると知らせるきっかけの出来事があると、クライアントB144を調べる。もし統合サーバー109が首尾良くクライアントB144と通信することができると、クライアントB144は、整合性を確認する属性を調べる<214>。不一致は無いというクライアントB144からの確認を受け取ると、マスターデータサーバー110はクライアントB144を免責摘要表から外す。   Master data server 110 adds client B 144 to the disclaimer summary table <208>, indicating that client B 144 has not been verified that the updated data is consistent with the consistency rules requested by client B 144. . The master data server 110 stores the updated data in the master database 112 <208> and begins the workflow of examining client B 144 <212>. This work flow is an opportunity to inform client B 144 that it is possible to check client B 144 manually or automatically after a certain period of time, or to communicate with the client, such as when client B 144 sends a read request. When there is an event, the client B 144 is checked. If the integration server 109 is able to successfully communicate with the client B 144, the client B 144 checks the attribute for checking consistency <214>. Upon receiving confirmation from client B 144 that there is no mismatch, master data server 110 removes client B 144 from the exemption summary table.

上記の方法を用いて、マスターデータの維持管理処理は、クライアントがネットワーク内で利用可能で無い時にはインストールされない。不整合のデータは、クライアントに渡らない。免責摘要表は、どのクライアントを、整合性の照合が完全に終わるまで、一時的にオブジェクトへのアクセスを禁止すべきかを決定するのに使用する。   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 integration server 109 passes the data only to clients to which the data is related. The consistency check is performed by those clients. If the message processed by the integration server 109 contains references to two organizations, the message can be split into two small messages, each of which is used to perform a consistency check. Will be done. This method can also be used to route data to different clients depending on attributes other than organizational units.

時に、データは正確に回されない。それ故、クライアントは、クライアントの通常動作を乱さないやり方で無関係のデータに反応するように設計される。例えば、もし第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 hybrid system 100, a client consistency check is performed on all master data before the new client can access the data.

新しいクライアントは、統合サーバー109で登録され、どの属性を照合したら良いかを示す照合インターフェイスを発行する。新しいクライアントは、新しいクライアントが整合性の照合が完了するまでアクセスされないように、全てのデータに対して免責摘要表に置かれる。仕事の流れ212(図6)に似た仕事の流れが、新しいクライアントに対する整合性の照合を実行するために始められる。   The new client is registered with the integration server 109 and issues a matching interface that indicates which attributes to match. The new client is placed in the disclaimer summary table for all data so that the new client is not accessed until the integrity check is complete. A workflow similar to workflow 212 (FIG. 6) is initiated to perform a consistency check against the new client.

[探索]
クライアントがマスターデータを探索する時、要求がマスターデータサーバー110に回送される。最初に、マスターデータサーバー110は、重要なフィールド(例えば、短い記述)を少々持った探索結果の表をクライアントに戻す。もし、クライアントが探索結果の全てあるいはいくつかの上にさらなる情報を必要とするならば、クライアントは、それ以上の情報にアクセスするのに読み出し処理(下述)を使用する。探索に使用されるマスターデータサーバー110のアプリケーションプログラミングインターフェイス(API)は、クライアントが必要とする探索の選択事項を網羅する多数の可能性を提示するように設計される。
[search]
When the client searches for master data, the request is routed to the master data server 110. Initially, the master data server 110 returns a table of search results with a few important fields (eg, short descriptions) to the client. If the client needs more information on all or some of the search results, the client uses the read process (described below) to access more information. The application programming interface (API) of the master data server 110 used for the search is designed to present a number of possibilities covering the search choices required by the client.

クライアントがマスターデータベース112内のデータを読む要求をすると、その要求は、マスターデータサーバー110へ回される。例えば、読み出し処理には2つの種類がある。読み出し処理の一つの種類は“識別結果を得る”と呼ばれる、オブジェクトの識別情報に対する要求であり、これは、オブジェクトの識別子とある記述パラメータ(例えば、製品に対する短い文章や、ビジネスの相手に対する名前)を返す。他の種類の読み出し処理は“詳細を得る”と呼ばれる、オブジェクトの詳細情報に対する要求であり、これは、オブジェクトに関連する情報全てを返す。   When a client requests to read data in the master database 112, the request is routed to the master data server 110. For example, there are two types of read processing. One type of read-out process is a request for object identification information, called "get identification result", which is an object identifier and some descriptive parameters (for example, a short sentence for a product or a name for a business partner). return it. Another type of read process is a request for detailed information about an object, called “get details”, which returns all information related to the object.

各クライアントは、オブジェクトの属性の定義を各自持つであろうし、クライアントはそのオブジェクトの一部を“詳細を得る”読み出し処理の中で考察する。それらの属性は、マスターデータサーバー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 master data server 110. It is possible that the master data server 110 has another, more general data model, and therefore the client API needs to be mapped to the master data server API. This mapping is performed in the application integration layer.

[削除]
マスターデータベース112内でのデータの削除は、2段階で実行することができる。最初に、各クライアントは、オブジェクトへの参照が存在するかどうかを尋ねられる。もし参照が存在しなければ、クライアントからオブジェクトに関連したデータを読もうとする読み出し処理は、それ以降受け付けられず、オブジェクトはどの探索結果においても返されない。2番目に、オブジェクトはマスターデータベース112に保管され、またそこから削除される。2番目の段階は、全てのクライアントが、オブジェクトに対する参照は無いことを述べた時に実行される。他のクライアントが未だオブジェクトにアクセスし使用することができるのに対し、あるクライアントに関してオブジェクトを“削除”することが可能である(第2段階は飛ばした)。
[Delete]
Deletion of data in the master database 112 can be executed in two stages. Initially, each client is asked if there is a reference to the object. If there is no reference, read processing that attempts to read data associated with the object from the client will not be accepted thereafter, and the object will not be returned in any search results. Second, the object is stored in the master database 112 and deleted from it. The second stage is performed when all clients have stated that there are no references to the object. While other clients can still access and use the object, it is possible to “delete” the object with respect to one client (the second step was skipped).

多くの処理によって、処理トランザクションから、そのトランザクションに関連したマスターデータへの航行(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 master data server 110 user interface is used.

[アプリケーション間の通信]
図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 order 220 for the product using the user interface 218. A user uses a search application to find a product with various attributes (eg, permanent key, description, product type). After the user enters data into the input screen, the search application checks to see if the product exists. The search application calls a product API 222 that accesses the product master database 112. If the search application finds a product, a short description of that product appears on the user interface. After the user has entered the order data, the user saves the data. When the order data is saved, a link (or reference) to the master data for the product is created. In some cases, product attributes are updated as needed.

[ソフトウェアの層の間の通信]
図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 client system 224 and the software layer of the master data server 110. The client system 224 includes a user interface 226, a business server layer 228, a persistence service layer 230, and a master database 232. Similarly, the master data server 110 includes a user interface 234, a business service layer 236, a continuation service layer 238, and a database 240. The client system 224 and the master data server 110 have a hierarchical software architecture. Each layer has access to the functions of the layers immediately below each system. When the client system 224 needs to access data in the database 240 of the master data server 110, the business service layer 228 of the client 224 communicates with the business service layer 238 of the master data server 110 to access the master data. To do.

マスターデータサーバー110のみがマスターデータベース240内のマスターデータにアクセスする。動作の一つのモードでは、クライアントシステム224はマスターデータを保持せず、クライアントに特化した処理データのみに対して自身の継続サービス230を使用する。例えば、ポータルを使用することによって、ユーザーインターフェイス226と234は、統合することができ、ユーザーはユーザーインターフェイス226からユーザーインターフェイス234へリンク或いは航行することができる。   Only the master data server 110 accesses the master data in the master database 240. In one mode of operation, the client system 224 does not maintain master data and uses its own continuation service 230 for only client-specific processing data. For example, by using a portal, user interfaces 226 and 234 can be integrated and a user can link or navigate from user interface 226 to user interface 234.

クライアントシステム224のユーザーインターフェイス226とビジネスサービス層228は、例えば交換インターフェイス或いはウェブサービスを通して直接にマスターデータサーバー110のビジネスサービス層236にアクセスできる。   The user interface 226 and business service layer 228 of the client system 224 can access the business service layer 236 of the master data server 110 directly, for example through an exchange interface or web service.

クライアントシステム224の継続サービス層230は、マスターデータサーバー110のビジネスサービス層236を使用して、マスターデータの継続を委譲することができる。   The continuation service layer 230 of the client system 224 can delegate the continuation of master data using the business service layer 236 of the master data server 110.

クライアントシステム224のユーザーは、アーキテクチャの要求によって、ビジネスサービス層228(リンク242を通して)、或いは継続サービス層230(リンク244を通して)からマスターデータベース240にアクセスすることを決定できる。継続サービス層230から接続することの利点は、継続サービス層230内のサービスの数は、通常、ビジネスサービス層228内のサービスの数よりも少ないことである。この結果、マスターデータベース240にアクセスできるように、少々の努力でクライアントシステム224を適応させることになる。継続サービス層230から接続することの他の利点は、継続サービス層230からマスターデータサーバー110にアクセスすることによって、どこにデータが保存されるかに係わらず、ビジネスサービス層228は独立して構成することができる点である。これによって、図8に示されるハイブリッドアーキテクチャを実施することが、より容易になる。   A user of the client system 224 may decide to access the master database 240 from the business service layer 228 (through link 242), or the continuation service layer 230 (through link 244), depending on architectural requirements. The advantage of connecting from the continuation service layer 230 is that the number of services in the continuation service layer 230 is typically less than the number of services in the business service layer 228. As a result, the client system 224 is adapted with little effort to gain access to the master database 240. Another advantage of connecting from the continuation service layer 230 is that by accessing the master data server 110 from the continuation service layer 230, the business service layer 228 is configured independently regardless of where the data is stored. It is a point that can be. This makes it easier to implement the hybrid architecture shown in FIG.

[クライアント側でのハイブリッドデータ保存]
混成情報技術システムの一実施例において、どのようにクライアントがマスターデータにアクセスするかは、どのようにクライアントが構成されるかによって決まる。もしクライアントが単独のシステムであれば、マスターデータはクライアントのデータベース内に直接に保存される。もしクライアントがマスターデータサーバーを持った分散型の環境で実行されるなら、マスターデータサーバーのマスターデータの継続性が使用される。
[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 continuation server layer 230 is designed to allow access to either the local database 232 or the remote master database 240 through the business service layer 236 of the master data server 110. This makes it possible to determine whether the data is maintained locally or remotely in customizing the software on the client side.

[マスターデータのマッピング]
マスターデータは、クライアントシステムとマスターデータサーバーとの間でメッセージを用いて交換される。統合サーバーは、メッセージの経路決定とマッピングに対して責任がある。統合サーバーは、クライアントに関する情報を持っており、メッセージのマッピングとデータの種類とインターフェイスに適切なものを選択することができる。
[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 master data server 114 includes a product data module 288 that manages product data. Product data module 288 includes user interface component 282, application programming interface component 284, and master database 286. The client application 250 accesses the product data module 288 by calling the master data broker 284, which performs cache functions and authorization checks, and stores locally stored data. To access (if the client is configured as a single system) or to access remotely stored data (if the client is configured to interact with the master data server). When the client 110 interacts with the master data server, some data may also be stored in a cache locally (eg, in the memory of the client 110).

マスターデータブローカー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のいずれか一つのデータベース内で維持管理される。   Master data broker 252 includes product server component 290, exchange interface proxy 292 and localized master database 296. Product server component 290 provides an application programming interface that application 250 can call. If client 110 is a single system, product server component 290 can access data stored in localized master database 296 through path 298. If the client 110 is configured to interact with the master data server 114, the product service component 290 can communicate with the exchange interface proxy 292 through the path 300. The exchange interface proxy 292 communicates with the application programming interface 284 of the master data server 114 through the exchange interface 126 of the integration server 109. Application programming interface 284 is used to access master data stored in master database 286. Whether the client 110 is configured as a single system or as part of a network system that interacts with the master data server 114, the master data can be either the local master database 290 or the master database 286. Are maintained in one database.

[データオブジェクト間のリンク]
マスターデータオブジェクトと処理オブジェクトは、ある意味論と結びつけることができる。その実行は、例えば一般的な顧客関係管理相関(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 master data server 110. The determination of whether the link between master data objects should be stored on the master data server 110 depends on the usage of the link in the connected client. If link semantics are required for many systems, the link must be stored on the master data server 110.

一般的に、マスターデータサーバー110は、処理データを知らない(或いは保存しない)。従って、クライアント114は、処理データから参照したマスターデータへのリンクを維持管理する責任がある。   In general, the master data server 110 does not know (or does not store) processing data. Accordingly, the client 114 is responsible for maintaining a link from the process data to the referenced master data.

時に、マスターデータサーバー110上の処理データへのリンクを保持する必要があるだろう。そのようなリンクをマスターデータサーバー100上で実施することは、一般的である。   Sometimes it will be necessary to maintain a link to the processing data on the master data server 110. It is common to implement such a link on the master data server 100.

[データのキャッシング]
マスターデータの読み出しアクセスは、マスターデータの他の処理よりも頻繁に起こり、屡々、速度が重視されるアプリケーションの一部である。クライアント側にあるデータをキャッシングすることにより、読み出しアクセス動作は、より高速に実行できる。
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.

Figure 2009266243
Figure 2009266243

マスターデータサーバーが維持管理するマスターデータベース内の中央にマスターデータが保存されるシステムを実現することには、いくつかの危険がある。統合サーバーとマスターデータサーバーは、高い有用性(絶対安全性)を持つことが必要である。もしマスターデータサーバーが利用可能でなければ、マスターデータに基づく処理はもはや実行することができない。マスターデータサーバーの故障によって起こる損害を軽減するために、局在キャッシング機構がクライアント上に入れられる。マスターデータの誤りによって処理は停止する。従って、マスターデータのマッピングは、絶対に誤りがあってはならない。全てのオブジェクトは、正確にマッピングをし、全ての必要な属性は正確にマッピングをしなくてはならない。システム間のトランザクションの整合性は、達成するのが難しい。データは、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 processing system 256 suitable for implementing processing for dynamic access of master data is shown. The system 256 includes a processor 258, a random access memory (RAM) 260, a program memory 262 (eg, a writable read-only memory (ROM) such as a flash ROM), a hard drive controller 264, a video A controller 266 and an input / output (I / O) controller 268 coupled to a processor (CPU) bus 270 are included. The system 256 can be programmed in advance in, for example, a ROM, or by loading a program from another data source (eg, from a floppy disk (registered trademark), a CD-ROM, or another computer). (Also pre-programmed).

ハードドライブ制御器264は、マスターデータソフトウェアを実行するためのプログラムを含んだ、実行可能なコンピュータプログラムを保存するのに適したハードディスク272へ結合される。ビデオ制御器266は、グラフィカルユーザーインターフェイスを表示するための表示装置274に結合される。I/O制御器268は、I/Oバス276を用いてI/Oインターフェイス278へ結合される。I/Oインターフェイス278は、シリアルリンクやローカルエリアネットワークや無線リンクや並列リンクなどの通信リンクを通して、データをアナログあるいはディジタルの形式で受け取りまた送る。   The hard drive controller 264 is coupled to a hard disk 272 suitable for storing executable computer programs, including programs for executing master data software. Video controller 266 is coupled to a display device 274 for displaying a graphical user interface. I / O controller 268 is coupled to I / O interface 278 using I / O bus 276. The I / O interface 278 receives and sends data in analog or digital form over communication links such as serial links, local area networks, wireless links and parallel links.

さらにI/Oバス276に結合されるのは、キーボード280である。代わりに、別々の接続(別々のバス)をI/Oインターフェイス278とキーボード280に対して使用することができる。マスターデータの動的アクセスの処理は、データサーバーのようなバックエンド部品を含むか、あるいはアプリケーションサーバーまたはインターフェイスサーバーのようなミドルウェア部品を含むか、あるいはグラフィカルユーザーインターフェイスやインターネットブラウザやそれらの組み合わせを持つクライアントコンピュータのようなフロントエンド部品を含むコンピュータシステム内で実現することができる。システムの部品は、いかなる形態でも、あるいは通信ネットワークのようなディジタルデータ通信の媒体によって接続することができる。通信ネットワークの例には、例えば、ローカルエリアネットワーク(“LAN”)やワイドエリアネットワーク(“WAN”)やインターネットが含まれる。   Also coupled to the I / O bus 276 is a keyboard 280. Alternatively, separate connections (separate buses) can be used for the I / O interface 278 and the keyboard 280. Processing of dynamic access of master data includes back-end components such as data servers, or includes middleware components such as application servers or interface servers, or has a graphical user interface, Internet browser, or a combination thereof It can be implemented in a computer system that includes front-end components such as a client computer. The components of the system can be connected in any form or medium of digital data communication such as a communication network. Examples of communication networks include, for example, a local area network (“LAN”), a wide area network (“WAN”), and the Internet.

コンピュータシステムには、クライアントとサーバーが含まれる。クライアントとサーバーは、一般的に互いに離れており、典型的には、既述したようなネットワークを通して相互作用をする。クライアントとサーバーの関係は、それぞれのコンピュータ上で実行され、互いにクライアント−サーバー関係を持つコンピュータプログラムに基づいて発生する。   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 integration server 109 and the master data server 110 may be physically in the same computer. The present invention can be applied to all kinds of data shared between two computers, and is not limited to “master data”. The data may be general data or application data. Accordingly, other embodiments are within the scope of the appended claims.

100…混成システム
102〜106…クライアントシステム
109…統合サーバー
110…マスターデータサーバー
112…マスターデータベース
114…クライアント
116…販売アプリケーション
118…製造アプリケーション
120…製品ユーザーインターフェイス
124…製品サービス層
126…交換インターフェイス
128…アプリケーションA
130…アプリケーションB
132…製品ユーザーインターフェイス
134…製品サービス層
DESCRIPTION OF SYMBOLS 100 ... Hybrid system 102-106 ... Client system 109 ... Integrated server 110 ... Master data server 112 ... Master database 114 ... Client 116 ... Sales application 118 ... Manufacturing application 120 ... Product user interface 124 ... Product service layer 126 ... Exchange interface 128 ... Application A
130: Application B
132 ... Product user interface 134 ... Product service layer

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.
前記データは、オブジェクトに関連する属性値を備えることを特徴とする請求項1記載の方法。   The method of claim 1, wherein the data comprises attribute values associated with an object. 識別子とデータベースが規則一式に適合することを確認する段階は、オブジェクトの属性に関連するクライアントが定義した規則の部分集合にデータが適合することをサーバーが確認する段階を備えることを特徴とする請求項2記載の方法。   Claiming that the identifier and database conform to the set of rules comprises the server confirming that the data conforms to a client-defined subset of rules associated with the attributes of the object. Item 3. The method according to Item 2. 前記規則の部分集合は、属性値の許容範囲にある形式を定義するための規則を備えることを特徴とする請求項3記載の方法。   The method of claim 3, wherein the subset of rules comprises a rule for defining a format that is within an acceptable range of attribute values. 識別子とデータが規則一式に適合していることを確認する段階には、該識別子が、オブジェクトの識別に関連するクライアントが定義した規則の部分集合に適合することをサーバーが確認する段階が含まれることを特徴とする請求項1記載の方法。   Verifying that the identifier and data conform to the set of rules includes the server confirming that the identifier conforms to a client-defined subset of rules associated with identifying the object. The method of claim 1 wherein: 前記規則一式は、識別子の許容範囲にある形式を定義する規則を備えることを特徴とする請求項5記載の方法。   6. The method of claim 5, wherein the set of rules comprises rules defining a format that is within an acceptable range of identifiers. さらに、サーバーが識別子にデータをリンクする段階を備えることを特徴とする請求項1記載の方法。   The method of claim 1, further comprising the step of the server linking data to the identifier. さらに、識別子にリンクされるデータを要求する要求をクライアントがサーバーに送る段階と、
識別子にリンクされたデータベース内のデータをサーバーがクライアントの許容範囲の形式に変換する段階と
を備えることを特徴とする請求項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サーバーが特定する段階と、
第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記載の方法。   The method of claim 1, wherein the object is a product. 前記オブジェクトがビジネスの相手であることを特徴とする請求項1記載の方法。   The method of claim 1, wherein the object is a business partner. 前記サーバーは、拡張可能なマークアップ言語で書かれたメッセージを用いてクライアントとやり取りすることを特徴とする請求項1記載の方法。   The method of claim 1, wherein the server interacts with the client using messages written in an extensible markup language. さらに、各クライアントに対して、
識別子とデータベースが、クライアントが定義した規則一式に適合するかどうかをサーバーが確認する要求をクライアントに送る段階と、
もしある特定のクライアントが応答しなければ、サーバーが、そのクライアントを免責摘要表に載せて、その識別子とデータが特定のクライアントが定義する規則一式に適合することが確認できなかったことを知らせる段階と
を備えることを特徴とする請求項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:
識別子とデータとが特定のクライアントが定義する規則一式に適合するかどうかを確認する他の試みは、ある所定の長さの時間の後か、特定のクライアントがデータベース内のデータにアクセスしようとした時に実施されることを特徴とする請求項13記載の方法。   Other attempts to ensure that identifiers and data conform to a set of rules defined by a particular client are after a certain length of time or when a particular client attempts to access data in the database 14. The method of claim 13, wherein the method is sometimes performed. データを維持管理するための方法において、
あるオブジェクトに関連するデータ一式の変更の要求をクライアントがサーバーに送る段階と、
サーバーがそのデータ一式を固定化したのでクライアントだけがそのデータ一式を変更できるというメッセージをクライアントが受け取る段階と、
変更したデータをデータベースに保存するために、変更したデータ一式をクライアントがサーバーに送る段階と、
変更したデータがデータベースに保存されたというメッセージをクライアントが受け取る段階と、
他のクライアントの各々に対して、変更したデータにアクセスできるのは他のどのクライアントかをサーバーが決定する段階と、
変更したデータが、クライアントが定義した規則一式に適合することをサーバーが確認する段階と
を備え、また、前記データ一式はサーバーに維持管理されるデータベース内に保存されることを特徴とする方法。
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.
前記データ一式は、オブジェクトに関連する属性値を備えることを特徴とする請求項15記載の方法。   The method of claim 15, wherein the set of data comprises attribute values associated with an object. クライアントが定義する規則一式は、属性値の許容範囲にある形式を定義するための規則を備えることを特徴とする請求項16記載の方法。   The method of claim 16, wherein the set of rules defined by the client comprises rules for defining a format that is within an acceptable range of attribute values. サーバーは、属性を、クライアントが発行したチェックリストと比較することで、変更したデータにアクセスできるのは他のどのクライアントかを決定し、各チェックリストはクライアントにアクセス可能な属性を示していることを特徴とする請求項16記載の方法。   The server compares the attributes with the checklist issued by the client to determine which other clients can access the modified data, and each checklist indicates which attributes are accessible to the client The method according to claim 16. オブジェクトが製品であることを特徴とする請求項15記載の方法。   The method of claim 15, wherein the object is a product. オブジェクトがビジネスの相手であることを特徴とする請求項15記載の方法。   The method of claim 15, wherein the object is a business partner. サーバーは、拡張可能なマークアップ言語で書かれたコードを備えるメッセージを用いてクライアントとやり取りすることを特徴とする請求項15記載の方法。   The method of claim 15, wherein the server interacts with the client using a message comprising code written in an extensible markup language. クライアントにアクセス可能なデータベース内に保存されたマスターデータの動的アクセスのためのコンピュータプログラムを保存した機械読み取り可能な媒体において、
プログラム制御可能なプロセッサに対し、
サーバーに、識別子および識別子によって識別されるオブジェクトに関連するデータを受け取らせ、
各クライアントに対して、識別子とデータがクライアントが定義した規則一式に適合するかをサーバーに確認させ、
サーバーに、識別子とデータとをデータベース内に入れさせる
ように動作可能な命令を備えることを特徴とするコンピュータプログラムを保存した機械読み取り可能な媒体。
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 machine-readable medium storing a computer program according to claim 22, wherein the data includes an attribute value related to the object. 前記命令は、プログラム制御可能なプロセッサに対し、オブジェクトの属性に関連してクライアントが定義した規則の部分集合にデータが適合することをサーバーに確認させるように動作可能であることを特徴とする請求項23記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The instructions are operable to cause a programmable processor to cause a server to verify that data conforms to a subset of rules defined by the client in relation to object attributes. A machine-readable medium storing the computer program according to Item 23. 前記規則の部分集合には、属性値の許容範囲にある形式を定義するための規則が含まれることを特徴とする請求項24記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   25. A machine-readable medium storing a computer program according to claim 24, wherein the rule subset includes a rule for defining a format within an allowable range of attribute values. 前記命令は、プログラム制御可能なプロセッサに対し、オブジェクトの識別に関連してクライアントが定義した規則の部分集合に前記識別子が適合することをサーバーに確認させるように動作可能であることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The instructions are operable to cause a programmable processor to cause a server to confirm that the identifier conforms to a subset of rules defined by the client in connection with object identification. A machine-readable medium storing the computer program according to claim 22. 前記規則一式には、識別子の許容範囲にある形式を定義するための規則が含まれることを特徴とする請求項26記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   27. A machine-readable medium storing a computer program according to claim 26, wherein the set of rules includes a rule for defining a format within an allowable range of identifiers. 前記命令は、プログラム制御可能なプロセッサに対し、サーバーに、データを識別子にリンクさせるように動作可能であることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   23. A machine-readable medium storing a computer program as recited in claim 22, wherein the instructions are operable to cause a program-controllable processor to cause a server to link data to an identifier. 前記命令は、プログラム制御可能なプロセッサに対し、クライアントに、識別子にリンクされるデータの要求をサーバーへ送らせ、サーバーに、識別子とリンクするデータベース中のデータを、クライアントの許容範囲にある形式へ変換させるように動作可能であることを特徴とする請求項28記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The instructions cause the programmable processor to cause the client to send a request for data linked to the identifier to the server, which causes the data in the database linked to the identifier to be in a format acceptable to the client. 29. A machine-readable medium having stored thereon a computer program according to claim 28, wherein the computer-readable medium is operable to convert the computer program. オブジェクトが製品であることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   23. A machine-readable medium storing a computer program according to claim 22, wherein the object is a product. 前記オブジェクトがビジネスの相手であることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   23. A machine-readable medium storing a computer program according to claim 22, wherein the object is a business partner. 前記サーバーは、拡張可能なマークアップ言語で書かれたメッセージを用いてクライアントとやり取りすることを特徴とする請求項22記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The machine-readable medium storing a computer program according to claim 22, wherein the server communicates with the client using a message written in an extensible markup language. 前記命令は、プログラム制御可能なプロセッサに対し、
サーバーに、各クライアントに対して、識別子とデータがクライアントの定義した規則一式に適合するかどうかを確認する要求をクライアントへ送らせ、もし特定のクライアントが応答しなければ、そのクライアントを免責摘要表に載せて、その識別子とデータが特定のクライアントが定義する規則一式に適合することが確認できなかったことを知らせるように動作することが可能であることを特徴とする請求項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.
前記命令は、プログラム制御可能なプロセッサに対し、識別子とデータが特定のクライアントの定義した規則一式に適合するかどうかを確認する他の試みを、所定の長さの時間の後、あるいは特定のクライアントがデータベース内のデータにアクセスしようとする時にサーバーに始めさせるように動作することが可能であることを特徴とする請求項33記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The instructions 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 amount of time, or for a particular client. 34. A machine-readable medium having stored thereon a computer program as recited in claim 33, wherein the computer program is operable to cause a server to initiate when attempting to access data in a database. マスターデータの動的アクセスのためのコンピュータプログラムを保存した機械読み取り可能な媒体において、
クライアントとサーバーを持ったコンピュータシステムに対して、
第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.
前記データ一式には、オブジェクトに関連した属性値が含まれることを特徴とする請求項35記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   36. A machine-readable medium storing a computer program as recited in claim 35, wherein the set of data includes attribute values associated with an object. 前記クライアントが定義した規則一式には、属性値の許容範囲にある形式を定義するための規則が含まれることを特徴とする請求項36記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   37. A machine-readable medium storing a computer program according to claim 36, wherein the set of rules defined by the client includes rules for defining a format within an allowable range of attribute values. 前記命令は、コンピュータシステムに対し、サーバーに、属性値をクライアントが発行したチェックリストと比較させるように動作可能であり、各チェックリストは、クライアントにアクセス可能な属性を示すことを特徴とする請求項36記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   The instructions are operable to cause a computer system to cause a server to compare an attribute value with a checklist issued by a client, each checklist indicating an attribute accessible to the client. A machine-readable medium storing the computer program according to Item 36. 前記オブジェクトが製品であることを特徴とする請求項35記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   36. A machine-readable medium storing a computer program according to claim 35, wherein the object is a product. 前記オブジェクトがビジネスの相手であることを特徴とする請求項35記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   36. A machine-readable medium storing a computer program according to claim 35, wherein the object is a business partner. 前記命令は、サーバーに、拡張可能なマークアップ言語で書かれたコードを備えるメッセージを用いてクライアントとやり取りさせるように動作可能であることを特徴とする請求項35記載のコンピュータプログラムを保存した機械読み取り可能な媒体。   36. A machine storing a computer program according to claim 35, wherein the instructions are operable to cause the server to interact with the client using a message comprising code written in an extensible markup language. A readable medium.
JP2009144735A 2002-09-03 2009-06-17 Dynamic access of data Expired - Lifetime JP4665042B2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (7)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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