Abstract:
A data processor (client PC) is connected to a document data management apparatus (server PC) that manages the location of document data listed in a document data list. The data processor displays the document data list, and inquires the document data management apparatus about the location of document data. The data processor compares the location of the document data with that indicated in the document data list. When the two locations do not match, the data processor denies operation on the document data.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     The present document incorporates by reference the entire contents of Japanese priority document, 2005-242592 filed in Japan on Aug. 24, 2005. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a technology for a multiclient-support client-server type document management system. 
     2. Description of the Related Art 
     In a document management system that is used by a plurality of client Personal Computers (PC) in a network, a document management server stores therein data to be displayed in the form of a list or the like on the display screen of each client PC. Some of the client PCs may refer to a list containing the same data in the document management server. In this case, a user of a client PC is not informed in real-time of changes in attributes or status of the-data caused by another user, and is not able to carry out optimal operation on the data in the list. 
     For example, suppose that the document management server includes multiple storages. If a user A transfers any data stored in a storage  1  to another storage  2 , a user B who is referring to a list containing the data is not aware that the data has been transferred by the user A to the storage  2  because the list referred to by the user B indicates that the data is still stored in the storage  1 . Due to this, the user B performs operation on the data as it is in the storage  1 . 
     In a technology disclosed in Japanese Patent Laid-Open Publication No 2003-337813, a client-server type document management system includes a client PC and a document management server that are connected via a network. The document management server includes a notifying unit that allows, when management contents at a server side are changed by a client PC, a document manager to easily learn the change of the management contents. In a technology disclosed in Japanese Patent Laid-Open Publication No 2003-85024, a document management program and method are applied to a server connectable to a network for updatably managing a document file in the server on a World Wide Web (WWW) system. 
     As described above, in a document management system that is used by multiple client PCs on a network, a document management server stores therein data to be displayed in the form of a list or the like on the display screen of each client PC. Some of the client PCs may refer to a list containing the same data in the document management server. In this case, a user of a client PC is not informed in real-time of changes in attributes or status of the data caused by another user, and is not able to carry out optimal operation on the data in the list. 
     One approach to the problem is to send a message, from the document management server to each client PC, informing that a client PC has transferred data in the document management server. With the message, each client PC can update the list. However, there are document management systems in which the document management server does not issue such a message or the client PC is not able to process the message issued from the document management server. Thus, there is a need of a technology for allowing each client PC to voluntarily confirm status of data in the document management server. 
     SUMMARY OF THE INVENTION 
     It is an object of the present invention to at least partially solve the problems in the conventional technology. 
     According to an aspect of the present invention, a data processor that is connected via a network to a data management apparatus that manages data and location of the data, includes a data managing unit that manages a data list containing location of at least some data managed by the data management apparatus, a communicating unit that obtains first location information of a first data listed in the data list from the data management apparatus a comparing unit that compares the first location information with second location information of the first data in the data list, and a controlling unit that denies operation on the first data when the first location information differs from the second location information. 
     According to another aspect of the present invention, a data processing method applied to a data processor that is connected via a network to a data management apparatus that manages data and location of the data, includes managing a data list containing location of at least some data managed by the data management apparatus, obtaining first location information of a first data listed in the data list from the data management apparatus, comparing the first location information with second location information of the first data in the data list, and denying operation on the first data when the first location information differs from the second location information. 
     According to still another aspect of the present invention, a data processing system includes a data management apparatus that manages data and location of the data, and a data processor that is connected to the data management apparatus via a network. The data processor includes a data managing unit that manages a data list containing location of at least some data managed by the data management apparatus, a communicating unit that obtains first location information of a first data listed in the data list from the data management apparatus, a comparing unit that compares the first location information with second location information of the first data in the data list, and a controlling unit that denies operation on the first data when the first location information differs from the second location information. 
     The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic of a data processing system according to an embodiment of the present invention; 
         FIG. 2  is a block diagram of a server PC  1  and a client PC  2  (or a client PC  3 ) shown in  FIG. 1 ; 
         FIG. 3  is a flowchart of the operation of the client PC  2  (or the client PC  3 ) according to a first embodiment; 
         FIG. 4  is a flowchart of the operation of the client PC  2  (or the client PC  3 ) according to a second embodiment; and 
         FIG. 5  is a flowchart of the operation of the client PC  2  (or the client PC  3 ) according to a third embodiment. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     Exemplary embodiments of the present invention are explained in detail below with reference to the accompanying drawings. Although the present invention is described with respect to specific embodiments for a complete and clear disclosure, the invention in its broader aspects is not limited to the specific details and representative embodiments shown and described herein. 
       FIG. 1  is a schematic of a data processing system according to a first embodiment of the present invention. The data processing system includes a document management server PC  1 , a client PC  2 , and a client PC  3 . The document management server PC  1  stores and manages data that is shared by each client PC. The client PC  2  and the client PC  3  include a user interface function for control operation of documents that are controlled by the document management server PC  1 . 
     The document management server PC  1 , the client PC  2 , and the client PC  3  are in the same network  4  such as a Local Area Network (LAN). Although two PCs: the client PC  2  and the client PC  3 , are shown in  FIG. 1 , the data processing system can include any number of client PCs depending on how the data processing system is to be used. 
       FIG. 2  is a block diagram of the document management server PC  1  and the client PC  2  (the client PC  3 ). The document management server PC  1  includes a shared data controller  5 , a database  6 , and a communication processor  7 . Due to operation of the shared data controller  5 , based on a request from each client PC (the client PC  2  or the client PC  3 ), the document management server PC  1  stores and manages shared data in the database  6 . 
     The shared data controller  5  receives a request from each client PC (the client PC  2  or the client PC  3 ) via the communication processor  7 . Upon receiving the request from the client PC (the client PC  2  or the client PC  3 ), the shared data controller  5  searches the database  6 , and transmits a necessary response to the request source client PC (the client PC  2  or the client PC  3 ) via the communication processor  7 . 
     Each client PC (the client PC  2  or the client PC  3 ) includes a communication processor  8 , a server connecting module  9 , and a user interface (I/F) module  10 . The user interface module  10  includes a screen display, and an input unit such as a mouse or a keyboard. The user interface module  10  fetches, via the server connecting module  9  and the communication processor  8 , a list of data that are managed by the document management server PC  1  connected in the data processing system, and displays the list on the screen. 
     Upon receiving an instruction from a user pertaining to data that is displayed in the list, the user interface module  10  sends an operation request for the data to the document management server PC  1  via the communication processor  8  and the server connecting module  9 . The user interface module  10  includes operation-mode setting data  11  for controlling the operation of the user interface module  10 . The user interface module  10  operates according to the setting content. The contents of the operation-mode setting data  11  can be changed from a screen that is operated by the user. 
       FIG. 3  is a flowchart of the operation of the client PC  2  (the client PC  3 ) according to the first embodiment. As shown in  FIG. 3 , upon issuance in the client PC  2  (the client PC  3 ) of an operation request regarding data in a list (step S 101 ), the user interface module  10  inquires the document management server PC  1  about the location of the relevant data via the server connecting module  9 . 
     Next, upon fetching data on the location of the data from the document management server PC  1  (step S 102 ), the client PC  2  (the client PC  3 ) compares the location obtained from the document management server PC  1  with the location of the data that is displayed in the list (step S 103 ). When the location of the data that is displayed in the list matches the location of the data in the document management server PC  1  (Yes at step S 103 ), the client PC  2  (the client PC  3 ) performs the operation requested by the user (step S 104 ) and terminates the process (step S 106 ). 
     If the location of the data that is displayed in the list differs from the location of the data in the document management server PC  1  (No at step S 103 ), the client PC  2  (the client PC  3 ) displays an error message (step S 105 ), and terminates the process (step S 106 ). 
     As described above, according to the first embodiment, in the document management system that is used by multiple client PCs in the network, the client PC  2  (the client PC  3 ) terminates operation requested by a user with respect to data whose location has been changed due to an operation by another client PC. Thus, it is possible to prevent an unintended process (an unnecessary process that occurs due to a user operation based on the wrong list). 
     A second embodiment is a modified example of the first embodiment. An explanation of the same features as in the first embodiment is not repeated, and a salient feature of the second embodiment is explained mainly with reference to  FIG. 4 . 
       FIG. 4  is a flowchart of the operation of the client PC  2  (the client PC  3 ) according to the second embodiment. As in the first embodiment, if the location of data that is displayed in a-list differs from the location of the data in the document management server PC  1 , the client PC  2  (the client PC  3 ) displays an error message and terminates the process. In addition, according to the second embodiment, the client PC  2  (the client PC  3 ) fetches data that is necessary for updating the list from the document management server PC  1  via the server connecting module  9  and updates the list, and redisplays an updated list. 
     Upon issuance in the client PC  2  (the client PC  3 ) of an operation request regarding data in a list (step S 201 ), the user interface module  10  inquires the document management server PC  1  about the location of the relevant data via the server connecting module  9 . 
     Next, upon fetching data on the location of the data from the document management server PC  1  (step S 202 ), the client PC  2  (the client PC  3 ) compares the location obtained from the document management server PC  1  with the location of the data that is displayed in the list (step S 203 ). 
     When the location of the data that is displayed in the list matches the location of the data in the document management server PC  1  (Yes at step S 203 ), the client PC  2  (the client PC  3 ) performs the operation requested by the user (step S 204 ) and terminates the process (step S 208 ). 
     If the location of the data that is displayed in the list differs from the location of the data in the document management server PC  1  (No at step S 203 ), the client PC  2  (the client PC  3 ) displays the error message (step S 205 ). Next, the client PC  2  (the client PC  3 ) requests the document management server PC  1  for data that is necessary for updating the list, and the user interface module  10  fetches the data via the communication processor  8  and the server connecting module  9  (step S 206 ). 
     Next, the user interface module  10  updates the list based on the data, redisplays the list (step S 207 ), and ends the process (step S 208 ). 
     According to the second embodiment, apart from the functions and effects explained in the first embodiment, the user interface module  10  has a function of redisplaying an updated list that indicates the new location of data stored in the document management server PC  1 . This allows the user to confirm that the list corresponds to the storage status of the data in the document management server PC  1  without any special operation. 
     A third embodiment is a modified example of the second embodiment. An explanation of the same features as in the second embodiment is not repeated, and salient features of the third embodiment are explained. The third embodiment is characterized especially in that, upon issuance of an operation request regarding data in a list, before carrying out the process that is explained in the first or the second embodiment, the user interface module  10  checks contents of the operation-mode setting data  11  thereof, and determines whether the client PC  2  (the client PC  3 ) is in a mode to confirm the location of the data in the document management server PC  1 . If the client PC  2  (the client PC  3 ) is in the mode to confirm the location of the data in the document management server PC  1 , the client PC  2  (the client PC  3 ) carries out the process that is explained in the first or the second embodiment. If the client PC  2  (the client PC  3 ) is not in the mode, the client PC  2  (the client PC  3 ) immediately performs the operation requested by the user for the data in the list. 
     In the third embodiment, the client PC (the client PC  2  or the client PC  3 ) includes as a part of the operation-mode setting data  11 , a flag as to whether to carry out the process to confirm the location of data in the document management server PC  1 . According to the flag, the user interface module  10  determines whether to perform the process to confirm the location of data in the document management server PC  1 . 
       FIG. 5  is a flowchart of the operation of the client PC  2  (the client PC  3 ) according to the third embodiment. Upon issuance in the client PC  2  (the client PC  3 ) of an operation request regarding data in a list (step S 301 ), the user interface module  10  checks whether the operation-mode setting data  11  is set to the mode to confirm the location of the data in the document management server PC  1  (step S 302 ). If the operation-mode setting data  11  is not set to the mode (No at step S 302 ), the user interface module  10  immediately performs the operation requested by the user (step S 305 ) and terminates the process (step S 309 ). 
     If the operation-mode setting data  11  is set to the mode (Yes at step S 302 ), the user interface module  10  inquires the document management server PC  1  about the location of the relevant data via the server connecting module  9 . Upon fetching data on the location of the data from the document management server PC  1  (step S 303 ), the client PC  2  (the client PC  3 ) compares the location obtained from the document management server PC  1  with the location of the data that is displayed in the list (step S 304 ). 
     When the location of the data that is displayed in the list matches the location of the data in the document management server PC  1  (Yes at step S 304 ), the client PC  2  (the client PC  3 ) performs the operation requested by the user (step S 305 ) and terminates the process (step S 309 ). 
     If the location of the data that is displayed in the list differs from the location of the data in the document management server PC  1  (No at step S 304 ), the client PC  2  (the client PC  3 ) displays the error message (step S 306 ). 
     Next, the client PC  2  (the client PC  3 ) requests the document management server PC  1  for data that is necessary for updating the list, and the user interface module  10  fetches the data via the communication processor  8  and the server connecting module  9  (step S 307 ). Next, the user interface module  10  updates the list based on the data, redisplays the list (step S 308 ), and ends the process (step S 309 ). 
     According to the third embodiment, apart from the functions and effects explained in the first and the second embodiments, the user interface module  10  can select whether to confirm the location of data in the document management server PC  1  through an operation-mode setting function of the client PC (the client PC  2  or the client PC  3 ). 
     The data processing system according to the third embodiment is advantageous when the confirmation process explained in the first and the second embodiments imposes an excessive load on the client PC depending on operation status of the data processing system. Specifically, when the process to confirm the location and attributes of data (to confirm the location of relevant data in the document management server PC  1 ) results in an excessive load on the client PC and interferes with the system operation, or when the confirmation process is not necessary, the client PC can spare the confirmation process. 
     In addition, when it has been determined that the confirmation process adversely affects the system operation, or is unnecessary, the client PC can be set to a mode such that the confirmation process is not to be performed. Thus, it is possible to realize a more effective data processing system. 
     Although the embodiments are described on the assumption that data is document data, document data is cited merely by way of example and without limitation. Data can be tables, images, computer programs, files for programs, directories and the like. 
     As set forth hereinabove, according to an embodiment of the present invention, in a document management system that is used by multiple client PCs in a network, if a location of data is changed due to operation by another client PC, user operation on the data is terminated. Thus, it is possible to prevent an unintended process, i.e., an unnecessary process that occurs due to a user operation based on the wrong list. 
     Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.