1. Field of the Invention
The present invention relates to automatic installation systems and methods, information processing apparatuses, and image forming apparatuses for efficiently setting up a plurality of image forming apparatuses.
2. Description of the Related Art
When introducing a new image forming apparatus, it is necessary to perform setup operations at a customer's site based on the usage environment. Setup operations for image forming apparatuses require much time and effort. Accordingly, a system has been proposed in which, in the case where the same setup operations can be carried out for a plurality of image forming apparatuses, the setup operations are carried out automatically and efficiently by preparing necessary software, setting values, verification data, and the like for the usage environment in advance and processing those items in accordance with installation instruction information.
Furthermore, a system has been proposed in which, in the case where individual settings are to be made for a plurality of image forming apparatuses, a correspondence list containing target identifiers that enable target image forming apparatuses to be specified and individual data is managed by a host system, and individual setup operations are carried out in accordance with the correspondence list (see Japanese Patent Laid-Open No. 2001-510597, for example).
However, it is often the case that setting values that must be set individually for individual image forming apparatuses are determined depending on the locations of installation, departments in which the apparatuses are installed, and so on. For example, installation locations and device names will differ depending precisely on the floor, department, or the like where the apparatus is installed, and address lists and the like that are registered may differ as well. When installing image forming apparatuses at a customer site, a random image forming apparatus is normally selected from among the image forming apparatuses that have been delivered and is installed in a specified location, and installation locations and image forming apparatuses are not necessarily associated with each other in advance. In other words, individual data determined based on the installation location and the target identifier of a image forming apparatus whose installation location is not set cannot be associated with each other in advance, and such a case cannot be handled by the system proposed in Japanese Patent Laid-Open No. 2001-510597.
Having been achieved in light of the aforementioned conventional example, the present invention provides an automatic installation system and method, an information processing apparatus, an image forming apparatus, and a program in which individual configuration information determined after an image forming apparatus is installed can be prepared in advance before the installation, and in which correct individual configuration information can be set through a simple operation.
The present invention has the following configuration.
According to the first aspect of the present invention, there is provided an automatic installation system comprising an information processing apparatus that generates a program for setting configuration information in one or more newly-installed image forming apparatuses and at least one image forming apparatus in which the configuration information is set by executing the generated program, the information processing apparatus including: an obtaining unit that obtains the configuration information to be set in an image forming apparatus to be configured; a generating unit that, in the case where the obtained configuration information includes individual configuration information set individually in the image forming apparatus to be configured and the individual configuration information is associated with an identifier of the individual configuration information, generates a first individual setting command for setting the individual configuration information in association with an input identifier when setting the configuration information in the image forming apparatus; and a storing unit that stores a program including the generated first individual setting command and the individual configuration information in a medium, and each of the at least one image forming apparatus loading the program, and including: an input unit that accepts an input of the identifier in the case where the first individual setting command is included; and a setting unit that sets the individual configuration information associated with the input identifier as the configuration information of the image forming apparatus.
According to the second aspect of the present invention, there is provided an information processing apparatus that generates a program for setting configuration information in one or more newly-installed image forming apparatuses in which configuration information is set by executing a generated program, the apparatus comprising: an obtaining unit that obtains the configuration information to be set in an image forming apparatus to be configured; a generating unit that, in the case where the obtained configuration information includes individual configuration information set individually in the image forming apparatus to be configured and the individual configuration information is associated with an identifier of the individual configuration information, generates a first individual setting command for setting the individual configuration information in association with an input identifier when setting the configuration information in the image forming apparatus; and a storing unit that stores a program including the generated first individual setting command and the individual configuration information in a medium.
According to the third aspect of the present invention, there is provide an image forming apparatus that sets configuration information by executing a program for setting the configuration information in one or more newly-installed image forming apparatuses, the image forming apparatus comprising: an input unit that, in the case where the program is loaded and a first individual setting command for setting the individual configuration information associated with an identifier input when the configuration information is set in the image forming apparatus is included, accepts an input of the identifier; and a setting unit that sets the individual configuration information associated with the input identifier as the configuration information of the image forming apparatus.
According to the present invention, the correct setup can be carried out during setup operations for an image forming apparatus even when the setup conditions are such that the networked environment cannot be used at the customer site where the image forming apparatus is installed, and the individual data to be applied and the target identifier of the image forming apparatus are determined based on the installation location.
Further features of the present invention will become apparent from the following description of exemplary embodiments (with reference to the attached drawings).
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
Although the image forming apparatus 101 has a network interface capable of connecting to a network, the present embodiment relates to a setup process for the image forming apparatus carried out in an environment where a network cannot be used, and thus the image forming apparatus is not connected to the LAN 100. The image forming apparatus 101 is an image forming apparatus that incorporates a plurality of functions, such as a scanner, a printer, a facsimile, a file sending function, and so on into a photocopier, and is thus what is known as a multifunction peripheral (MFP). The image forming apparatus 101 includes an interface for connecting portable storage media. Although the interface for connecting portable storage media is not limited to a specific type, the present embodiment assumes that a USB interface is used. Data can be read from and written to the portable storage medium 102 by connecting the portable storage medium 102 to this interface. The portable storage medium 102 may be any type of storage device that can be easily removed from a host device, but in the present embodiment, USB storage 209 of the USB mass storage class is used.
The client computer 103 is what is known as a personal computer. The client computer 103 has an interface for connecting portable storage media. Although the interface for connecting portable storage media is not limited to a specific type, a USB interface is used in the present embodiment. Data can be read from and written to the portable storage medium 102 by connecting the portable storage medium 102 to this interface. The client computer 103 functions as an automatic setting program generation device that generates project data in which is registered setup details for the image forming apparatus 101 and generates a script for automatic settings executed by an automatic setting program, which will be mentioned later.
The project management server 104 is a server that manages the project data generated using the client computer 103. The project data will be described later. The project management server 104 may be connected to the LAN 100 directly or over the Internet. The software management server 105 is a server that manages firmware that can be used by the image forming apparatus 101, various types of license information, and so on. The software management server 105 may be connected to the LAN 100 directly or over the Internet.
The ROM 206 and the RAM 202, an operating unit I/F (operating unit interface) 203, a network I/F (network interface) 204, a USB host I/F 205, and an image bus I/F (image bus interface) 212 are connected to the CPU 201 via a system bus 210.
The operating unit I/F 203 is an interface with the operating unit 208, which includes a touch panel, and outputs image data to be displayed in the operating unit 208 to the operating unit 208. The operating unit I/F 203 also sends information input by the user through the operating unit 208 to the CPU 201. The network I/F 204 is an interface for connecting the image forming apparatus 101 to a LAN.
The USB host I/F 205 is an interface unit that communicates with the USB storage 209. The USB host I/F 205 outputs data stored in the HDD 207 to the USB storage 209. The USB host I/F 205 also inputs data stored in the USB storage 209 and provides that data to the CPU 201. The USB storage 209 is an external storage device that stores data, and can be attached to and removed from the USB host I/F 205. A plurality of USB devices, including the USB storage 209, can be connected to the USB host I/F 205.
The image bus I/F 212 is a bus bridge for connecting the system bus 210 and an image bus 211 that transfers image data at high speeds, and converting data formats. The image bus 211 is configured of a PCI bus, IEEE 1394, or the like. A device I/F 215, a scanner image processing unit 214, and a printer image processing unit 213 are provided on the image bus 211.
The scanner 217 and the printer 216 are connected to the device I/F 215, and the device I/F 215 performs synchronous/asynchronous conversion on the image data. The scanner image processing unit 214 performs correction, processing, editing, and so on on input image data. The printer image processing unit 213 carries out correction, resolution conversion, and so on on print output image data, in accordance with the printer 216.
Computer Hardware Configuration
An operating unit I/F 305 is an interface that connects a user interface terminal that inputs control operations to programs executed by the client computer 103. Although configured of a mouse 309, a keyboard 310, and the like in the present embodiment, the operating unit I/F 305 is not limited thereto.
A display I/F 306 is an interface that connects a display terminal that displays UIs of programs executed by the client computer 103. Although configured of a display 311 in the present embodiment, the display I/F 306 is not limited thereto.
A network I/F 308 connects the control unit 300 to the LAN 100. The network I/F 308 exchanges various types of information with other apparatuses over the network.
A USB host I/F 307 is an interface unit that communicates with the USB storage 209. The USB host I/F 307 outputs data stored in the HDD 304 to the USB storage 209. The USB host I/F 307 also inputs data stored in the USB storage 209 and provides that data to the CPU 301. The USB storage 209 is an external storage device that stores data, and can be attached to and removed from the USB host I/F 307. A plurality of USB devices, including the USB storage 209, can be connected to the USB host I/F 307.
Server Hardware Configuration
A network I/F 405 connects the control unit 400 to the LAN 100. The network I/F 405 exchanges various types of information with other apparatuses over the network. The software management server 105 has the same configuration as the project management server 104 and thus descriptions thereof will be omitted.
Software Configuration of Image Forming Apparatus
The firmware update service 603 is a service that provides various types of functions for updating firmware. For example, the firmware update service 603 refers to firmware specified by a user and determines whether or not it is necessary to update that firmware. The firmware update service 603 also updates the firmware in response to or via the native program 601.
The option activation service 604 is a service for activating optional functions incorporated into the native program 601 in advance. The option validation service 604 identifies and activates optional functions specified by an option license file designated by a user.
The configuration management service 605 is a service for managing various types of configuration information for the printer, scanner, and so on. The configuration management service 605 provides a function for overwriting configuration information of the native program 601 when one or more settings are made or a file containing a plurality of pieces of configuration information is designated by the user, for example. Note that the configuration management service 605 has a user interface (“UI” hereinafter), and the user can instruct settings to be changed via the operating unit 208 of the image forming apparatus 101. Furthermore, the configuration information can be provided as a file in response to a request from an expansion program, sent via the expansion program system service 606. This function will be referred to as exporting a device configuration information file hereinafter. The configuration information contains various types of settings, such as an address book and optional functions to be activated, information regarding an installation location, user account information, default setting values for various types of functions, and so on, for example. Of these, it is possible that different values are set for individual image forming apparatuses, such as settings for the address book and optional functions, installation locations, apparatus identification information, account information, and so on, for example.
The expansion program system service 606 is provided by the system, from a utility library of use for sharing expansion programs. By calling the function of the expansion program system service 606 from the expansion programs 607, the need to develop the expansion program can be eliminated. The expansion programs 607 can access other expansion programs 607, the respective modules of the image forming apparatus 101 such as the RAM 202, and so on only via the expansion program execution platform 602 or the expansion program system service 606. Meanwhile, the expansion programs 607 that have a UI can display icons in a main menu screen displayed in the operating unit 208 of the image forming apparatus 101. When the operating unit I/F 203 detects via the operating unit 208 that the user has selected these icons, the operating unit I/F 203 sends a notification thereof to the CPU 201. Having received the notification, the CPU 201 displays the UI of the expansion program selected by the user in the operating unit 208.
Note that this software configuration indicates only the basic parts, and other services and the like may be included depending on the operating environment. Furthermore, unnecessary services may be omitted for reasons such as restricting settings or the like.
Functional Configuration of Automatic Installation Program
Functional Configuration of Project Management Program
File Storage Used by Automatic Installation Program
A Firmware folder 901, an Option folder 903, an App folder 905, a DevConfig folder 908, an AppConfig folder 910, and a Script.xml file 912 are present in a root folder 900.
The Firmware folder 901 is a folder that holds firmware to be updated for the image forming apparatus 101. In
The Option folder 903 is a folder that holds a license file for activating an optional function incorporated into the native program 601 in advance. In
The App folder 905 is a folder that holds the expansion program 607 to be installed in the image forming apparatus 101 and a license file required to install the expansion program 607. In
The DevConfig folder 908 is a folder that holds device configuration information related to the image forming apparatus as a whole. In
The AppConfig folder 910 is a folder that holds application configuration information related to the expansion program 607 provided by the Application.jar 906. In
Script.xml 912 is a script in which is denoted a setup procedure for automatically processing setup operations. This script includes items that are interpreted and executed in accordance with the execution of the automatic installation program 700. Details of this script will be given later. Note that the configuration illustrated in
Setting Procedure Using Script
The script 1000 is read by the storage control unit 702 of the automatic installation program 700, and is analyzed by the script analysis unit 704 via the processing execution unit 703. After being analyzed by the script analysis unit 704, the processing denoted in the script 1000 is executed by the processing execution unit 703. The script 1000 illustrated in
The project data identification portion 1001 is configured of a <setupId> in which a project ID for identifying the project data, described later, is written. The project ID is an identifier assigned to the project data when the project data is generated by the project management program 800, and is a value unique to each piece of project data. For example, a GUID (Globally Unique Identifier) is used as the project ID.
The image forming apparatus identification portion 1002 denotes a target identifier for identifying the image forming apparatus 101 that is to be set up (that is to be configured), and is configured of a <deviceId> that is an identifier of the image forming apparatus 101. For example, a combination of a product ID and a serial number can be employed as the target identifier.
The processing description portion 1010 denotes a group of processes necessary for the setup. In
The expansion program installation processing portion 1004 defines a process with an <installApplicationCommand> tag, and specifies an expansion program to be installed using a <dirPath> tag and an <appName> tag. The <dirPath> tag denotes a relative path from the root folder 900 to the actual expansion program to be installed. The <appName> tag specifies the actual expansion program to be installed. In
Meanwhile, a license for the expansion program to be installed is specified by a <licenseDirPath> tag and a <licenseFileName> tag. The <licenseDirPath> tag denotes a relative path from the root folder 900 to the license file of the expansion program. The <licenseFileName> tag specifies the actual license for the expansion program. Although FIG. 9 indicates a license file in the .lic file format being specified, the license file format is not limited thereto.
The expansion program start processing portion 1005 defines a process with a <startApplicationCommand> tag, and specifies an expansion program to be started using an <appId> tag. The <appId> tag specifies an ID that uniquely identifies the expansion program to be started.
The option activation processing portion 1006 defines a process through the <activateOptionCommand> tag, and specifies a license file for an option to be activated through a <dirPath>tag and a <licenseFileName> tag. The <dirPath> tag denotes a relative path from the root folder 900 to the license file for the option to be activated. Although
The device configuration information import processing portion 1007 defines a process through a <importDeviceConfigCommand> tag, and specifies a device configuration information file to be imported through a <dirPath> tag and a <fileName> tag. The <dirPath> tag denotes a relative path from the root folder 900 to the device configuration information file to be imported. The <fileName> tag specifies the device configuration information file to be imported. In
The application configuration information import processing portion 1008 defines a process through an <importAppConigCommand> tag, and specifies an application configuration information file to be imported through a <dirPath> tag and a <fileName> tag. The <dirPath> tag denotes a relative path from the root folder 900 to the application configuration information file to be imported. The <configFileName> tag specifies the application configuration information file to be imported. In
The reboot processing portion 1009 is configured only of a <rebootCommand> tag, and is a process for rebooting the image forming apparatus and applying settings to the image forming apparatus after the series of setup processing has ended.
Note that the content of the script indicated in
Setup Operations
Step S1101 is an operation carried out by a salesperson 1105 at each sales location. The salesperson 1105 consults with a customer and then inputs the configuration of an image forming apparatus that has been decided on, as well as setting details thereof, using the project management program 800 of the client computer 103. The configuration of the image forming apparatus is the model type, options to be activated, extension applications to be installed, and the like. The input details are sent to the project management server 104 as the project data and are managed by the project management server 104.
Step S1102 is an operation carried out by an installation manager 1106 at a warehouse or the like for managing the storage and retrieval of the image forming apparatus, and here, identifiers that enable each image forming apparatus to be specified (called “target identifiers” hereinafter) can be obtained. The installation manager 1106 obtains the project data of a project to be processed from the project management server 104 and edits the project data using the project management program 800 on the client computer 103. “Editing” here refers to registering the target identifier of the image forming apparatus to be set up in the project data. The project data in which the target identifier has been registered is again sent to the project management server 104 and managed in that server.
In step S1103, the installation manager 1106 uses the project management program 800 to generate a setup USB storage for setting up the image forming apparatus. The installation manager 1106 obtains the project data of the project to be processed from the project management server 104, and in accordance with the details of the project data obtains, from the software management server 105, configuration information such as the firmware, expansion applications, and so on necessary for the setup, as well as license files for installing the firmware, expansion applications, and the like. At this time, for licenses in a format in which there is a single license for a single image forming apparatus, the respective license files are obtained based on the target identifiers registered in step S1102. The project management program 800 generates the script 1000 based on project data and the obtained configuration information such as a software type, and saves the script 1000 along with the obtained configuration information such as the software type into the USB storage. Although step S1102 and step S1103 are described as separate steps, it is not particularly necessary to separate the two, and a procedure may be employed in which the software type is obtained when registering the target identifier and is saved into the USB storage.
Step S1104 is an operation carried out by an installer 1107 at customer sites where the image forming apparatuses will actually be set up. When the image forming apparatuses 101 and the USB storage 209 are shipped from the warehouse, the installer 1107 delivers the image forming apparatuses to respective locations requested by the customers. When the installer 1107 connects the USB storage 209 generated in step S1103 to the image forming apparatus 101, the automatic installation program 700 of the image forming apparatus 101 automatically executes the setup process, and the operation is complete.
Project Data Structure (1)
The common data 1201 is configuration data used in common for a plurality of image forming apparatuses (common configuration information), and the individual data 1202, 1203, and 1204 are configuration data having different configuration values for each of the image forming apparatuses (individual configuration information). The common data 1201 and the individual data 1202, 1203, and 1204 are input from the project management program 800 by the salesperson 1105 in step S1101 of
As indicated by the script 1000 in
There are three image forming apparatuses to be set up.
The same version of firmware is installed in all three apparatuses.
Common device settings are imported into all three apparatuses.
Different values are imported into the three apparatuses for some of the items in the device settings.
Script Example (1)
If the individual data and the target identifier are associated before
In such a case, incorrect settings may be applied if the individual data and a target identifier are associated in advance, and thus scripts specific to each image forming apparatus, in which the individual data of the image forming apparatus (that is, individual configuration information) is associated with the target identifier of that image forming apparatus (see
Project Data Structure (2)
The difference between the project data 1200 shown in
The common data 1201, the individual data 1202, 1203, and 1204, and the target identifiers 1205, 1206, and 1207 are the same as those illustrated in
Script Example (2)
The differences from the script 1300 illustrated in
Values input as the names 1401, 1402, and 1403 of the project data 1400 are written in the selection part. In the present embodiment, “1F” is input as the name 1401, “2F” is input as the name 1402, and “3F” is input as the name 1403.
A device configuration information file deviceConfigurationFile.zip imported as common data for all of the image forming apparatuses is written in the device configuration information import processing portion 1505, as are device configuration information files ConfigurationFile_d1.zip, ConfigurationFile_d2.zip, and ConfigurationFile_d3.zip, which are imported as individual data. Meanwhile, an id attribute for identifying the individual data is added to the <fileName> tags thereof as an attribute. Due to the presence of the id attribute, the automatic installation program 700 can recognize that the content is for individual data rather than for common data. The value of an <item> designated by the individual data selection processing portion 1503 is set in the id attribute, clarifying a correspondence relationship between the individual data and the name. Of course, a configuration in which the <item> value is not set for the id attribute may be employed as long as the automatic installation program 700 is capable of recognizing the correspondence relationship between the individual data and the name.
Normally, if the individual data and the target identifiers can be associated in advance, or in other words, if individual configuration information can be specified in advance, it is only necessary to provide the information of the individual data corresponding to the respective target identifier. However, because such an association cannot be made in advance, information regarding all of the pieces of individual data is written in the device configuration information import portion of the script, as is the case with this script. In other words, aside from the image forming apparatus identification portion 1502, the same content is written in a script 0001.xml (a script for the target identifier 0001), a script 0002.xml (a script for the target identifier 0002), and a script 0003.xml (a script for the target identifier 0003).
Script Generation Process
In the case where not even one target identifier is registered, the script generation unit 805 cannot generate a script corresponding to a respective target identifier, and thus in step S1604, the processing execution unit 802 cancels the process for writing into the USB storage 209. The project data generated at step S1101 of the workflow illustrated in
In the case where even one target identifier is registered, in step S1605, the processing execution unit 802 obtains, from the software management server 105, the software types (firmware, license files, and so on, for example) necessary for the setup, based on the project data. When the process of downloading the software ends, the processing execution unit 802 calls the script generation unit 805.
In step S1606, the script generation unit 805 checks whether or not individual data is registered in the project data. In the case where not even one piece of individual data is registered, the script generation unit 805 generates a type A′ script (S1607). A state in which not even one piece of individual data is registered is a state in which the individual data 1202, 1203, and 1204 are not present in the project data 1200 illustrated in
The type A′ script generated from the stated project data in which no individual data is registered corresponds to a script in which the information <fileName>0001ConfigurationFile.zip</fileName> regarding the individual data is absent from the device configuration information import processing portion 1304 in the script 1300 illustrated in
When the script generation unit 805 generates the scripts corresponding to respective target identifiers, the processing execution unit 802 calls the storage control unit 803, and saves all of the scripts along with the software downloaded in step S1605 into the USB storage 209 (S1608). In step S1606, when the script generation unit 805 detects that individual data is registered, the script generation unit 805 furthermore checks whether or not target identifiers are associated with that individual data in step S1609.
In the case where target identifiers are associated with all of the pieces of individual data, the script generation unit 805 generates a type A script (S1610). The project data at this time has the configuration of the project data 1200 illustrated in
On the other hand, in step S1609, in the case where no target identifier is associated with any of the pieces of the individual data, the script generation unit 805 generates a type B script (S1611). A state in which individual data is registered in the project data but no target identifiers are associated corresponds to the configuration of the project data 1400 illustrated in
The type B script generated from such project data has the configuration of the script 1500 illustrated in
When the script generation unit 805 generates the scripts corresponding to respective target identifiers, the processing execution unit 802 calls the storage control unit 803, and saves all of the scripts along with the software downloaded in step S1605 into the USB storage 209 (S1608).
In the case where the script generation unit 805 has detected that target identifiers are associated only with some of the pieces of registered individual data in step S1609, two types of scripts, namely the type A and the type B, are generated in step S1612. The type A is generated as a script corresponding to project data in which target identifiers are associated with the individual data, whereas the type B is generated as a script corresponding to project data in which names are associated with the individual data instead of target identifiers.
When the script generation unit 805 generates the scripts corresponding to respective target identifiers, the processing execution unit 802 calls the storage control unit 803, and saves all of the scripts along with the software downloaded in step S1605 into the USB storage 209 (S1608).
Script Execution Process
In step S1701, the processing execution unit 703 checks whether or not a script for its own apparatus is present in the USB storage. A condition for determining that a script for its own apparatus is present is the target identifier of its own apparatus being included in the filename of an XML file immediately below the root folder 900 in the USB storage 209. Although the configuration in the present embodiment is such that the script of its own apparatus is detected based on the filename, another configuration may be employed instead. For example, the configuration may be such that the files immediately below the root folder 900 in the USB storage 209 are read sequentially and the <deviceId> in the image forming apparatus identification portion 1502 is checked.
In the case where a script corresponding to the target identifier of its own apparatus is not present, the processing execution unit 703 takes no particular action. Alternatively, an error message prompting the correct USB storage to be connected is displayed, after which the processing ends.
In the case where a script corresponding to the target identifier of its own apparatus is present, the processing execution unit 703 loads and saves the script into the HDD 207 of the image forming apparatus 101 (S1702).
In step S1703, the processing execution unit 703 calls the script analysis unit 704, whereupon the script saved in HDD 207 is analyzed and various types of commands are executed based on a result of the analysis. Details of step S1703 will be described using
When a command is executed, in step S1704, the script analysis unit 704 checks whether or not all of the commands in the script have been executed. In the case where the processes of all commands are complete, the processing ends. In the case where a command that has not yet been executed remains, the processing returns to step S1703, and the next command is executed.
First, it is determined whether the obtained script is present in the individual data selection processing portion 1503 (S1712). The process branches to step S1709 of
In step S1706, the UI control unit 701 stands by until it is detected that the installer 1107 has selected a piece of individual data and pressed an OK button 1801. When the UI control unit 701 detects that the OK button 1801 has been pressed, in step S1707, the processing execution unit 703 generates association information between the target identifier of its own apparatus and the individual data associated with the selected name. The association between the selected name in the individual data can be obtained by referring to the device configuration information import processing portion 1505. The association information indicates a correspondence relationship between the target identifier and the individual data, and any format may be used for this information as long as the information can be interpreted by the project management program 800, the project management server 104, and so on. In the present embodiment, it is assumed that this information is generated as XML, by the script analysis unit 704 called by the processing execution unit 703, and that the information has a structure such as that shown in
Association information 1900 is configured of an image forming apparatus identification portion 1901 and an individual data identification portion 1902. The target identifier of the own apparatus that has been set up is recorded in the image forming apparatus identification portion 1901. The project ID <setupId> for identifying the project data used in the set up and an individual ID <individualId> that enables the individual data to be identified are recorded in the individual data identification portion 1902. This individual ID is added to each piece of individual data when the project management program 800 generates the project data 1200, 1400, or the like, and a unique value is assigned to each piece of individual data. For example, a GUID (Globally Unique Identifier) is used as the project ID. Using the target identifier of its own apparatus, the script analysis unit 704 generates the association information 1900 with a name such as 0001information.xml. Although the present embodiment assumes a configuration in which the individual ID is written in the association information, the configuration may be such that a name is written instead of the individual ID. The name is written in the individual data selection processing portion 1503 of the script 1500. The value selected by the installer 1107 may be written in the association information.
In step S1709, the script analysis unit 704 identifies whether or not a name attribute has been added to the command that has been read. The “name attribute” corresponds to a part “id=1F” of the device configuration information import processing portion 1505 mentioned in the descriptions of the script 1500 illustrated in
In the case where the script analysis unit 704 has not detected the name attribute, the processing execution unit 703 executes the command in step S1710. On the other hand, in the case where the script analysis unit 704 has detected the name attribute, in step S1711, it is further checked whether or not that attribute value matches the name selected by the installer 1107 in step S1706. In the case where the names match, the processing execution unit 703 executes the command in step S1710, whereas in the case where the names do not match, the command is not processed.
By adding a name to the individual data in this manner, the correct processing can be carried out even if a command that handles individual data unrelated to its own apparatus is written, as with the device configuration information import processing portion of the script 1500.
Post-Processing after Automatic Installation Process
In the case where the association information file is saved, the processing execution unit 802 copies the association information file into the HDD 304. Then, in step S2002, the processing execution unit 802 sends, to the project management server 104 via the network I/F 308, a request to obtain project data that matches a project ID (abcdefg, in the example shown in
In the case where the project data is present in step S2002, the processing execution unit 802 saves the obtained project data in the HDD 304. In step S2005, the processing execution unit 802 calls the project data management unit 804, and checks whether or not individual data that matches the individual ID (or name) read out from the association information file by the script generation unit 805 is registered in the obtained project data.
In the case where individual data that matches the individual ID (or name) is not registered, in step S2003, the processing execution unit 802 displays, via the UI control unit 801, an error message indicating that the project data may have been updated, and ends the processing. In the case where individual data that matches the individual ID (or name) is registered, the project data management unit 804 associates the target identifier of the association information file 1900 (0001, in the example illustrated in
Through this processing, for example, in the project data 1400 illustrated in
Although the first embodiment describes a configuration in which the function 805 for generating the script from the project data is provided in the project management program 800 in the client computer 103, the configuration may be such that the function is provided in the project management server 104.
When a specific piece of project data is specified through the UI control unit 801 in accordance with a user selection, the processing execution unit 802 sends the project ID of the specified project data along with a setup data generation request to the project management server 104 (S2203). Having received the setup data generation request, the processing execution unit 2101 of the project management server program 2100 calls the script generation unit 2103, and executes the same processing as indicated by steps S1605 to S1607 and steps S1609 to S1612 illustrated in
Through the procedure described above, the script executed by the automatic installation program for setting the configuration information of the image forming apparatus can be generated by the project management server 104.
Note that project data in which the configuration information is not divided into common data and individual data, such as project data in which configuration data is provided for each image forming apparatus, can be handled as follows. That is, configuration items for which different values can be set from image forming apparatus to image forming apparatus are determined in advance. The set values for the configuration items determined in advance are then compared between pieces of project data, and if there is an item for which different values are set, the values set for that item are automatically extracted as items that enable the individual data to be identified, and the individual data is then classified for each image forming apparatus. Items for which different values cannot be set and items for which different values are not set serve as the common data 1201. Based on the project data 1200 reconfigured in this manner, the script is then generated according to the aforementioned configurations and procedures and executed.
Alternatively, in such a case, if the configuration information included in the project data is all defined as individual data and it is assumed that there is substantially no common data, the script can be created through the aforementioned configurations and procedures, and the automatic installation can be carried out according to that script.
Embodiments of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e. g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiments and/or that includes one or more circuits (e. g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiments, and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiments and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiments. The computer may comprise one or more processors (e. g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2014-050535, filed Mar. 13, 2014, which is hereby incorporated by reference herein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2014-050535 | Mar 2014 | JP | national |