Patent Publication Number: US-7584199-B2

Title: System and server for managing shared files

Description:
This application is based on patent application No. 2004-189622 filed in Japan, the contents of which are hereby incorporated by reference. 
   BACKGROUND OF THE INVENTION 
   1. Field of the Invention 
   The present invention relates to a system for managing files shared in a network. 
   2. Description of Prior Art 
   In many systems for managing files shared by a plurality of users in a network, when a user edits a shared file, other users can open the file for read-only or they cannot edit it. This processing is used to prevent inconsistency in information from occurring when a same portion in the file is edited at the same time. For example, if data contents that was stored previously by a user is overwritten with data contents stored thereafter by a different user, the former data contents is lost for the previous user. Also, many systems for managing shared files do not allow a file to be edited at the same time even for different portions in the file. 
   However, if a file is edited at the same time at different portions by a plurality of users, the edited data can be stored by any of the users irrespective of the location of the edited portion, and the above-mentioned problem is avoided. When a file has a smaller size, a probability that a same portion is edited at the same time would be higher. However, as the file size becomes larger, the probability becomes smaller. In addition, the necessity to edit different portions at the same time becomes higher for a file of a larger size. Then, many proposals are proposed for management on editing of shared files. 
   For example, many techniques are proposed to manage a file for each of partial areas therein. In a system described in Japanese Patent laid open Publication 10-55300/1998, a file is divided into portions, and management means keeps data for each portion in a management table recording access situation and a person who accesses the file portion. When a request for accessing a file is received, it is asked for the person to designate an access portion. If the access portion is not used, the access is permitted, and the management table is updated. Then, the file can be accessed at the same time at different portions, without destroying a file, and it can be referred to or updated. In a system described in Japanese Patent laid open Publication 6-295299/1994 for electronic editing for a document file, a plurality of operators edits the file for each page at the same time. The document file is divided into pages, and a parallel editing flag, a user management table and an access map area are provided for each page. Further, an object table is provided for managing data on an object to be edited for each operator registered in the user management table, and updated data are automatically exchanged between a master file and the data file. Thus, portions to be edited by the operators are assigned preliminarily, so that a danger to edit the same portion can be avoided. A system described in Japanese Patent laid open Publication 6-12310/1994 permits editing only for one person in the unit of partial portion in a file. A table for exclusive control stores exclusive management information for all the partial portions in a file to be edited, while a relational information table stores information that relational information on a partial portion is kept in the same file or in a different file. When an editor apparatus starts editing of a partial portion in a file, it is checked with reference to the exclusion management table whether editing is possible or not, and if the editing is possible, the exclusion management table is updated to show that it is under the exclusion management. Further, with reference to the relational information table, it is checked whether a relational portion to the partial portion is present or not, and if it is present, it is subjected to the exclusive control by updating the exclusion control table. When the editing is completed, the exclusive management table is recovered to the state at the start and the exclusive management is canceled. Thus, a file can be edited at different portions at the same time while keeping consistency of the data in the file, and the consistency can be kept between a partial portion to be changed for editing at the time and other portions not changed. 
   It was proposed to permit to access data by updating latest information, without minding inhibition control. In a system described in Japanese Patent laid open Publication 5-225028/1993, exclusive control is performed for simultaneous accesses to a file shared by a plurality of users and manages read from and write to the file by the users. It is decided at each predetermined time whether information referred to now is the latest information or not, and if the information is not the latest information, the latest information is read and displayed in a display device. Data which may be changed continuously is locked in order to prevent inconsistency in the data, but unlocked when a certain time elapses after the last time when the data is changed. 
   However, in the prior art systems for managing files shared in a network, a plurality of users can edit different portions in a file, but the systems cannot be used easily by users. For example, in the simultaneous file editing described in Japanese Patent laid open Publications 10-55300/1998 and 6-12310/1994, the system itself has editing right to the files. Therefore, even when there is no person who is editing a file, a person who wants to access the file has to designate an access portion for the file, and this makes the operation inconvenient. In the system described in Japanese Patent laid open Publications 6-295299/1994, exclusive control is adopted to permit editing for only a person in the unit of partial portion. Then, it cannot be used easily when editing portions for a plurality of editors are not determined preliminarily. In the system described in Japanese Patent laid open Publication 5-225028/1993, the latest information is updated each predetermined time, and this wastes the network resources. 
   SUMMARY OF THE INVENTION 
   An object of the invention is to provide a user-friendly file sharing system for permitting editing at different portions in a file at the same time while forbidding editing at a same portion at the same time. 
   In an aspect of the invention, files shared by a plurality of client apparatuses are managed in a server apparatus connected through a network to the plurality of client apparatuses. When an access to a file in the shared files by a first client apparatus is received, it is decided whether the file accessed is under editing by a second client apparatus or not, with reference to file management data on access circumstance of the shared files. When the accessed file is not edited by any other client apparatus, the first client apparatus is allowed to open the file and is permitted editing of the file by the first client apparatus. On the other hand, when the accessed file is not edited by a second client apparatus, the second client apparatus editing the file including a portion which the first client apparatus intends to edit, a first graphic user interface is presented to the second client apparatus for notifying whether the second apparatus permits or rejects editing of the portion by the first client apparatus. When a notification to permit editing of the portion is received from the second client apparatus, the first client apparatus is allowed to open the file in a status wherein editing of the portion by the first client apparatus is permitted. 
   An advantage of the present invention is that users can edit a file at different portions at the same time by giving editing right to a user or users by the user having the editing right. 
   Another advantage of the present invention is that the contents in a file stored previously by a user are not overwritten by contents stored by another user thereafter. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     These and other objects and features of the present invention will become clear from the following description taken in conjunction with the preferred embodiments thereof with reference to the accompanying drawings, and in which: 
       FIG. 1  is diagram of an entire structure of a system for managing shared files; 
       FIG. 2  is a diagram of a server apparatus; 
       FIG. 3  is a diagram of a client apparatus; 
       FIG. 4  is a flowchart for managing shared files according to a first embodiment; 
       FIG. 5  is a diagram of a graphic user interface for confirming whether a portion which a user intends to edit is present or not; 
       FIG. 6  is a diagram of a first graphic user interface for designating a portion which a user intends to edit; 
       FIG. 7  is a diagram of a second graphic user interface for designating a portion which a user intends to edit; 
       FIG. 8  is a diagram of a third graphic user interface for designating a portion which a user intends to edit; 
       FIG. 9  is a diagram of a fourth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 10  is a diagram of a fifth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 11  is a diagram of a sixth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 12  is a diagram of a communication log window; 
       FIG. 13  is a diagram of a communication log window; 
       FIG. 14  is a diagram of a first graphic user interface for designating a portion which a user intends to edit; 
       FIG. 15  is a diagram of a second graphic user interface for designating a portion which a user intends to edit; 
       FIG. 16  is a diagram of a graphic user interface for describing a reason for rejecting to assign editing right; 
       FIG. 17  is a diagram of a communication log window; 
       FIG. 18  is a flowchart for managing shared files according to a second embodiment; 
       FIG. 19  is a diagram of a sixth third user interface for designating a portion which a user intends to edit; 
       FIG. 20  is a diagram of a fourth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 21  is a diagram of a communication log window; 
       FIG. 22  is a diagram of a fifth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 23  is a diagram of a sixth graphic user interface for designating a portion which a user intends to edit; 
       FIG. 24  is a diagram of a communication log window; 
       FIG. 25  is a part of a flowchart for managing shared files according to a fourth embodiment; 
       FIG. 26  is the other part of the flowchart for managing shared files according to a fourth embodiment; and 
       FIG. 27  is a diagram of a seventh graphic user interface for designating a portion which a user intends to edit. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   Referring now to the drawings, wherein like reference characters designate like or corresponding parts throughout the several views,  FIG. 1  shows generally a system for sharing files in a network such as a local area network. A server apparatus  20  for storing shared files as well as client apparatuses  30  such as personal computers are connected in the network  10 , and the client computers can access to shared files managed by the server apparatus  20 . A file management program is installed in the server apparatus  20 . A user operates a client apparatus  30  to access and edit the shared file in the server apparatus  20 . Though only two client apparatuses are shown in  FIG. 2 , the number of the client apparatuses is not limited to two. 
     FIG. 2  shows a structure of the server apparatus  20 . In the server apparatus  20 , a central processing unit (CPU)  200  which controls the entire system is connected to a storage device  202  such as a hard disk drive and to a communication device  204  for transmitting data through the external network  10 . The storage devices  202  stores files  210  shared via the network, a file management table  212  on the shared files  210 , a file management program  214  for managing the shared files  210 , and a web server  216  which enables access to the shared files  210  from the external. The file management table  212  has file management data on access circumstance of the shared files. The web server  216  stores various graphic user interfaces for access to the file management program  214  in order to access a shared file  210 . 
     FIG. 3  shows an example of the client apparatus  30 . In the client apparatus  30 , a central processing unit (CPU)  300  for controlling the entire apparatus is connected to input devices  306  such as a keyboard and a mouse, a display apparatus  308  as a display means, and a storage device  302  such as a hard disk device, a communication device  304  for data transmission through the network, and the like. The storage device stores various applications  310  for processing a shared file and a browser  312  for accessing the server apparatus  20  through the network  10 . In this embodiment, the server apparatus  20  communicates with the client apparatus  30  by using the web server  216  and the browser  312 , but the communication between them is not limited to this procedure. A user can edit a shared file at any one of the client apparatuses  30  by using the application  310 . It is to be noted that “editing” means a work in a general sense including addition, deletion, change and the like for a shared file. 
   The file management program  214  in the server apparatus  20  permits editing a shared file at different portions in the file at the same time while prohibits editing a same portion at the same time. The file management table  212  provided for managing the shared files stores access situation to each file, and the access situation includes user&#39;s name who is accessing the file and editing portion to which the user has editing right. The file management system manages the users having editing rights to the shared files and their editing portions with reference to the file management table  212 . As to a file managed in the file management system, a user who accesses the file first can have authority to edit the entire file. Alternatively, the user who accesses the file first may designate a portion in the file which he or she intends to edit or have authority to edit the portion. The authority for editing is referred to as “editing right”. 
   When a request for accessing a file is received, the file management program  214  can permit editing of the file with reference to the file management table  212 . When only one user accesses a file, the user can be given the authority to edit the entire file, as mentioned above. When another user wants to access the file to which the above-mentioned user has the editing right, the editing user shall permit or reject editing by the other user. When the editing user permits editing of a different portion by the other user, that is, when the editing user assigns editing right to a portion of the file to the other user a plurality of users can edit different portions in the same file. The table  212  is updated, and it stores the situation of editing right. Because the editing user who has the editing right can change a portion to which the editing right is claimed, a portion which the editing user is editing is not necessarily forbidden to be edited by another user who starts editing later. As to the assignment of editing right by the editing user, various modes are possible, as will be explained later, on the management of the portion to which the editing user has edited already. 
   In the file management system, the client apparatus  30  communicates with the server  20  through a graphic user interface (GUI) displayed in a screen of the display device  308  in the client apparatus  30 , and various inputs are accepted in the graphic user interface. When a user (user “A”) accesses a file while another user (user “B”) is editing it, in order to permit simultaneous editing of different portions in the file, the system informs user “A” that the file is being edited by user “B” in the screen (GUI) in the display device  308  of the client apparatus  30  of user “B”. Further, it recommends user “A” to designate a portion in the file which user “A” intends to edit. When user “A” designates a portion in the GUI, the shared file management system informs user “B” that another user (user “A”) wants to edit the portion in the file to which user “B” has editing right, and shows the portion in the screen of the display device  308 . Then user “B” having the editing right informs rejection or permission of editing on the portion. When user “B” permits the editing, user “A” has the editing right only to the portion. Otherwise, user “A” cannot edit the file. When user “B” does not give the editing right, the reason therefor can be notified to user “A”. 
   Next, a system for managing shared files according to a first embodiment of the invention is explained. When only one user “B” accesses a file, the user is given authority to edit the entire file. If another user “A” designates a portion in the file which he or she intends to edit, user “B” who is editing currently has authority to permit or reject the editing on the portion. In this embodiment, if the portion has already been edited by user “B”, the file management system does not notify to user “B” the confirmation for permission or rejection on the portion edited already and notifies user “A” of rejection directly. If a part of the portion has already been edited by user “B”, the file management system interprets the request of user “A” that user “A” wants to edit the portion except the part which has already been edited. This puts priority for the editing work by user “B” who has the editing right. 
     FIG. 4  shows a flowchart of a part of a program  214  in the server  20  for managing shared files according to this embodiment, the part being related to the editing right. When a log-in by user “A” at the client apparatus  30  to the file management system is accepted, and access to a shared file is received (S 10 ), it is checked with reference to the file management table  212  whether the file is currently edited by any user or not (S 12 ). If no other user is decided to be editing the file (NO at S 12 ), a right to edit the entire file is given to user “A”, who is allowed to open the file (S 14 ). Then, the file management table  212  is updated, and user “A” can edit any portion in the file. 
   On the other hand, If another user is decided to be editing the file (YES at S 12 ), it is allowed to open the file for read-only or exclusively for read (S 16 ). Then, it is notified to user “A” that the other user is currently editing the file, in a graphic user interface displayed in the screen of the display device  308  of the client apparatus of user “A”. At the same time, it is informed to user “A” that if a portion which user “A” intends to edit is designated, it is inquired to the currently editing user that the portion may be edited or not by user “A” (S 18 ).  FIG. 5  shows a dialog for inquiring whether user “A” has a portion in the file which user “A” intends to edit or not. A message is displayed in the dialog as follows: “This file is opened for read-only because another user is editing it now. Do you continue to open the file for read-only? You can designate a portion which you intends to edit and can inquire to the editing user whether the editing of the portion is permitted or not.” User “A” can select to press either “Open for read-only” button or “Designate a portion” button.  FIG. 5  shows a situation when “Open for read-only” button is clicked. 
   If it is decided that “Open for read-only” button is clicked by user “A” (NO at S 20 ), the file is opened for read-only. On the other hand, if it is decided that “Designate a portion” button is clicked by user “A” (YES at S 20 ), a graphic user interface ( FIG. 6 ) for designating a portion which user “A” intends to edit (referred to also as “editing intending portion”) is shown in the screen of the display device  308  of user “A” (S 22 ). User “A” can designates one or more editing intending portions, in the graphic user interface (S 24 , refer to  FIGS. 7 to 11 ), as will be explained in detail later. 
     FIG. 6  shows a graphic user interface for designating an editing intending portion when the “Designate a portion” button is pressed in the graphic user interface shown in  FIG. 5 . In  FIG. 6 , a following message is shown: “Designate a portion which you intend to edit. You can designate it if you press “Set” button, move the cursor to start or end point and press “Determine” button. You can designate two or more portions.” (It is to be noted that “Designate another portion” button and “OK” button are set to inactive state in  FIG. 6 .) When “Set” button at the right side of “Start point” text box is pressed, a window for displaying a file becomes active, and as shown in  FIG. 7 , information on the cursor position in the window is displayed, in the format of “page xx, line yy, place zz” in the text box. Further, the caption of “Set” button is changed to “Determine”. When the cursor is moved to a start position and “Determine” button is pressed, as shown in a dialog shown in  FIG. 8 , the text box is changed to a status wherein the text box cannot be edited. (Though not shown, when “Determine” button is pressed, the color of the text box is changed, and a user can decide easily whether the input data is determined or not.) The caption of “Determine” button is changed to “Reset”, and if “Reset” button is pressed, the graphic user interface is returned to the state shown in  FIG. 7 . Direct input to the text box is also possible with the keyboard. If the point information on start point is known, start position information can be inputted with the keyboard, without moving the cursor in the window wherein the file is displayed. At this time, if page is not set in the text box, “page  1 ” is set automatically, if line is not set, “line  1 ” is set automatically, and if place is not set, “place  1 ” is set automatically. 
   Similarly, an end point can be designated. An error occurs if an end point precedent before the start point is designated. Alternatively, the cursor is inhibited to move ahead of the start point. If an end point is designated properly, as shown in a dialog in  FIG. 9 , “OK” button becomes active. 
   In the dialog shown in  FIG. 9 , “Designate another portion” button also becomes active, and if another portion is intended to designate, this button is clicked. Then, as shown in  FIG. 10 , the dialog is extended downward so as to make it possible to designate another portion. Then, text boxes for setting start point  2  and end point  2  are displayed. (In this graphic user interface, “Designate another portion” button becomes inactive.)  FIG. 11  shows the dialog wherein the two portions have been designated. 
   When the editing intending portion designated by user “A” is received, it is retrieved in the file management table who has the editing right for the portion (S 26 , refer to  FIG. 12 ). If the portion has already been changed or edited (YES at S 28 ), it is displayed in the screen ( FIG. 13 ) of the display device  308  of user “A” that the portion cannot be edited (S 30 ). 
   If “OK” button is pressed in a situation, as in a dialog shown in  FIG. 11 , wherein one or more editing intending portions are designated, a window of communication log as shown in  FIG. 12  is displayed in the screen. In the window, information on a designated editing intending portion is displayed. The shared file management system shall not permit assignment of editing right on a portion to which data have already been changed. Thus, a following message is displayed: “Now checking whether the designated portion has been changed or not”, and it is checked whether the designated portion has been changed or not. Then, if the designated portion is decided that it has been changed, it is notified, as shown in the window in  FIG. 13 , that editing right to the designated portion cannot be obtained. After the check is completed, if there is any other designated portion, a user having the other editing right on the portion is retrieved. Then, the editing intending portion to which assignment of editing right to a different user is requested is notified to the user who has the editing right to the editing intending portion, as shown in a dialog shown in  FIG. 14 . If a part of the portion has already been changed, the part is automatically removed from the editing intending portion. In an example shown in  FIG. 11 , start point  2  is denoted as “page  14 , line  20 , place  1 ”, but in the communication log dialog shown in  FIG. 14 , it is notified that a part from page  24 , line  20 , place  1  to page  26 , line  18 , place  24  has already been edited, and new start point  2  is displayed in the window as “page  26 , line  18 , place  25 ”. 
   As to a portion not yet changed, it is notified to user “B” having editing right to the portion in the screen of the display device  308  that he or she is requested to assign the editing right on the portion to another user (S 32 , refer to  FIGS. 14 to 17 ). Further, as shown in the dialog shown in  FIG. 14 , a message is displayed for the user having the editing right, as follows. “A user requests you to assign editing right to a following portion(s). Please select rejection or permission for the portion(s). In the case of rejection, a reason of rejection can be sent.” User “A” cannot edit the file until rejection or permission is selected for the portion(s). That is, it is waited that a communication is received from the user having the editing right (NO at S 34 , and S 40 ). The dialog shown in  FIG. 14  is closed when either “Reject” or “Permit” button is selected for all the portions. 
   For example, as shown in  FIG. 15 , it is assumed that the first portion from start point  1  to end point  1  is permitted while the second portion from start point  2  to end point  2  is rejected. Then, as to the rejected portion, a dialog as shown in  FIG. 16  is displayed for writing a reason for rejecting assignment of the editing right, and user “B” can write and send a reason of rejection. Alternatively, “Reject” button can be pressed, without sending a reason of rejection. Thereafter, as shown in a communication dialog in  FIG. 17 , the above-mentioned information is notified to user “A” who designates the portions. 
   When the editing right is assigned to the editing intending portion (YES at S 34 ), the editing right to the portion is given to user “A” (S 36 ), and the file can be opened in a status where editing is permitted only for the portion. Then user “A” can edit the portion. Thus, the file management table  212  is updated. As to the portion to which the editing right is not assigned, a status of open for read-only is maintained, and editing is not possible. 
   If there is another portion to which user “A” requests to edit (YES at S 38 ), it is waited that the editing right to the portion is assigned to user “A” (S 40 ). IF the request of assignment from user “A” is not canceled (NO at S 42 ), the flow returns to step S 34  and the assignment is waited. If the request is canceled (YES at S 42 ), the flow is completed. 
   In the above-mentioned embodiment, when a user accesses a shared file while another user is editing the file, a graphic user interface for designating an editing intending portion is displayed. Alternatively, when a file is accessed, an editing intending portion for editing data may be designated at the same time. 
   Next, a system for managing shared files according to a second embodiment of the invention is explained. The second embodiment is similar to the first embodiment in many points, but it makes it possible for user “A” who accesses a file later to edit a portion in the file even if another user has already changed the portion or a part thereof. That is, in the second embodiment, even if a portion or a part thereof requested for editing has been changed by another user “A” confirmation is notified to the user and waits an answer therefor. This takes into account that the user may assign the editing right, for example, when he or she has already completed editing on the portion. 
     FIG. 18  shows a flowchart of a program for managing shared files according to the second embodiment. In the following, only different points from the file management program in the first embodiment are explained. When user “A” designates one or more editing intending portions in a graphic user interface for designating portions, a user who has editing right to the portions is retrieved at step S 26 . The processing from start to step S 26  is the same as the counterpart in the first embodiment. Then, in the first embodiment, if data in a designated portion has been changed by another user, user “A” cannot obtain editing right to the portion, without requesting assignment of editing right of the another user. On the other hand, in the second embodiment, it is notified or asked to the retrieved user that another user requests that editing right is assigned (S 33 ). If a portion to which editing right is assigned to user “A” is not included in the designated portions (NO at S 34 ), it is waited that editing right is assigned to user “A” (S 40 ), similarly to the first embodiment. On the other hand, if a portion to which editing right is assigned to user “A” is included (YES at S 34 ), the portion is overwritten for storage, and user “A” reloads only the portion in the file or the entire file from the system (S 35   a ). Then, the editing right of the portion is given to user “A” to permit editing only for the portion (S 36 ). Then, the file management table  212  is updated. Thus, user “A” starts to edit the portion after it is updated, and this prevents inconsistency of the information on the file. The processing thereafter is similar to the program of the first embodiment, and explanation thereof is omitted here. 
   A graphic user interface for designating an editing intending portion in this embodiment is explained, in contrast to the first embodiment, in a situation when another user who starts editing of a file first already edits a part of an editing intending portion designated by user “A” who accesses the file later. The flow of operation and display shown in  FIGS. 6 to 12  is similar to the counterpart in the first embodiment. After the shared file management system detects a portion which has already been edited, a dialog shown in  FIG. 19  is presented to the other user “B”. It is different from the dialog of  FIG. 14  in the first embodiment that the contents of start point  2  is displayed as requested by user “A”, irrespective of whether user “B” edits the relevant portion or not. If user “B” clicks “Permit” button for the both portions, as shown in  FIG. 20 , and notifies the assignment of editing right, it is already recognized that start point  2  of the second editing intending portion has been edited (page  24 , line  10 , place  1  to page  26 , line  18 , place  24 ), so that the portion is overwritten and stored, and user “A” reloads the portion. Thus, the file opened by the user “B” having the editing right is updated to keep the latest state. Further a message is shown for user “A” in a communication log window shown in  FIG. 21  to show what the system is doing. In this example, a following message is displayed. “The user having editing right to a portion (start point  1  of page  24 , line  10 , place  1  to page  26 , line  18 , place  24 ) has already changed the portion, but the editing right is assigned. Wait until the change is reflected.” 
   Next, a system for managing shared files according to a third embodiment of the invention is explained. This embodiment is similar to the first and second embodiments in many points, and only different points are explained below. In the third embodiment, it is possible to assign editing right only to a part of a portion to which user “A” intends to edit, without assigning the other part of the portion. That is, a user who is editing a file can assign the editing right only to a part of an editing intending portion in the file. It is different from the second embodiment that editing right can be given partially to the editing intending portion in the processing at step S 36  in the flowchart of the file management program of  FIG. 18 . 
     FIG. 22  shows a communication log dialog displayed in the display device of the other user who starts editing of the file first and has editing right for the file when user “A” who starts editing later requests assignment of editing right. The dialog has “Reject partially” button as well as “Reject” button, “Permit” button, “Reject all” button and “Permit all” button. “Reject partially” button is used for rejecting editing for only a part of the editing intending portion. 
   It is assumed here that the other user is editing page  26 , line  18 , place  24  and that the editing to this point has been completed, but the other user will edit a part following thereafter so that will not assign editing right. IF “Reject partially” button in the dialog is clicked, editing in the text box is enabled, and a part on which editing shall be rejected can be designated. Further, the caption of “Reject partially” button is changed to “Determine” as illustrated in  FIG. 23 . When a cursor is positioned in a window displaying the file at a designated point, the position information of the cursor is presented in the text box. Off course, it may be inputted directly with the keyboard. The remaining part other than the part designated after pressing “Reject partially” button is dealt as a part whose editor right can be permitted. When “Reject” button, “Permit” button or “Determine” button is pressed for all the portions, the dialog is closed. When a rejected part is present, it may be possible to open the dialog shown in  FIG. 16  to write a reason of rejection. If it is assumed here that the same reason as shown in  FIG. 16  is inputted, a communication dialog as shown in  FIG. 24  is displayed for the other user as to the partial rejection, a following message is displayed for example. “Editing right of portion (page  26 , line  18 , place  25  to end point  2  (page  28 , line  24 , place  38 )) cannot be obtained. A following message is received from the user having the editing right to the portion. “I am editing the part now. If you want to correct the remarks, I will do it.” 
   Next, a system for managing shared files according to a fourth embodiment of the invention is explained. In the above-mentioned embodiments, when a first user accesses a file, if no user is editing the file, the editing right to the entire file is given to the first user. However, if it is already known that a file is edited by a plurality of users, especially if editing portions have already been assigned, it is always necessary to give editing right to a user who accesses the file after the first user. Thus, the burden of the first user would be heavy. In order to avoid this problem, in this embodiment, the first user who accesses a shared file first can designate a predetermined editing portion when opening the file. Therefore, if a second or following user does not designate the editing portion to be edited by the first user, the first user is not needed to operate to assign the editing right, so that the burden of the first user can be decreased. 
   A flowchart for a file management program according to a fourth embodiment is shown in  FIGS. 25 and 26 . The only difference from the file management program according to the first embodiment ( FIG. 4 ) is a processing when a shared file is accessed first (that is, when it is decided NO at step S 12 ). In this case, first a graphic user interface for designating an editing intending portion shown in  FIG. 27  is displayed in the screen of the user “A” (S 44 ). In this graphic user interface, an editing intending portion can be designated similarly to the graphic user interface of the first embodiment shown in  FIG. 6 , but further “Designate all” button and “Open for read-only” button are added. If a possibility that other users will edit the file is low, of if the first user intends to edit the entire file, when “Designate all” button is pressed, the entire file is designated as the editing intending portion. “Open for read-only” button is pressed when editing is not performed. 
   When “Designate all” button is pressed (YES at S 46 ), editing right is given to user “A” and the file is opened (S 14 ). When “Open for read-only” button is pressed (YES at S 48 ), the file is opened for read-only (S 50 ). Otherwise, when an editing intending portion is designated by user “A” (S 52 ), the editing right to the portion is given to user “A”, and the file is opened (S 54 ). 
   Needless to say, the processing for designating an editing intending portion shown in  FIG. 27  may be adopted as modified examples in the file management system according to the second and third embodiments. 
   In any of the above-mentioned embodiments, it is assumed that only one user is editing a shared file. However, when a plurality of users edit a shared file, the editing portions therefor are set so as not to overlap each other, the processing therefor is similar to the flowchart as shown in  FIGS. 4 ,  6  and  25 - 26 . 
   In the above-mentioned embodiments, a file including mainly text data is dealt with. However, the invention can be applied to any file in which a portion (or a range) can be designated uniquely. For example, similarly to the above-mentioned embodiments, a user designates a range of cells in a spreadsheet application (wherein a cell is a smallest unit of area for inputting data), and requests a user having editing right to the range of cells to assign the editing right. When the editing right is assigned, the range of cells can be edited. Thus, a plurality of users can edit the same file at different ranges at the same time. 
   As explained above, the above-mentioned systems for managing shared files in a network manage users having editing rights and editing portions thereof. Because a user who has editing right actually permits editing, a plurality of users can edit a file at different portions at the same time, without editing the same portion at the same time, and the contents in a file stored previously by a user is not overwritten by contents stored by another user thereafter. 
   Although the present invention has been fully described in connection with the preferred embodiments thereof with reference to the accompanying drawings, it is to be noted that various changes and modifications are apparent to those skilled in the art. Such changes and modifications are to be understood as included within the scope of the present invention as defined by the appended claims unless they depart therefrom.