Application program, electronic apparatus and information processing system
The application program generates screens in new languages without requiring a version upgrade, thereby enhancing convenience and improving convenience.
Patent Information
- Application Number
- JP2024088137
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-30
- Publication Date
- 2025-12-11
AI Technical Summary
Conventional application programs require a version upgrade to support generating screens in new languages that are not supported as standard.
The application program obtains a custom language file from a custom language file management system when the electronic device lacks a supported language file for the OS, allowing it to generate screens in new languages without an upgrade.
Enables screen generation in new languages without requiring a version upgrade, thereby enhancing convenience and improving convenience.
Smart Images

Figure 2025180654000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an application program for generating a screen, an electronic device, and an information processing system. [Background technology]
[0002] BACKGROUND ART Conventionally, there is known an application program that generates a screen in the same language as the language of an OS (Operating System) among the languages supported as standard (see, for example, Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2008-084233 Summary of the Invention [Problem to be solved by the invention]
[0004] However, conventional application programs have a problem in that in order to generate a screen in a new language that is not supported as standard, the program must be upgraded to support this new language as standard.
[0005] SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide an application program, an electronic device, and an information processing system that can generate a screen in a new language without requiring a version upgrade. [Means for solving the problem]
[0006] The application program of the present invention is characterized in that it is executed by an electronic device, and when the electronic device does not have a supported language file in the language of the OS as a language file for a supported language that is a standard supported language, it causes the electronic device to obtain the custom language file in the language of the OS from a custom language file management system that manages custom language files as language files that are not supported language files, and causes the electronic device to generate a screen using the custom language file obtained by the electronic device.
[0007] With this configuration, when an electronic device that executes the application program of the present invention does not have a supported language file for the OS language, it obtains a custom language file for the OS language from the custom language file management system and generates a screen using the obtained custom language file, so that the application program screen can be generated in a new language even if the application program is not upgraded.
[0008] The application program of the present invention may cause the electronic device to obtain the version of the custom language file managed by the custom language file management system from the custom language file management system, and if the version of the custom language file managed by the custom language file management system is the same as or older than the version of the custom language file currently being used by the electronic device, may cause the electronic device to stop obtaining the custom language file in the language of the OS from the custom language file management system.
[0009] With this configuration, an electronic device executing the application program of the present invention will stop obtaining a custom language file in the OS language from the custom language file management system if the version of the custom language file managed by the custom language file management system is the same as or older than the version of the custom language file currently being used by the electronic device, thereby reducing the load on the custom language file management system.
[0010] The application program of the present invention may cause the electronic device to obtain priority information from the custom language file management system indicating which language file is to be preferentially used between the supported language files and the custom language files, and if the priority information indicates that the custom language file is the language file that is to be preferentially used between the supported language files and the custom language files, may cause the electronic device to obtain the custom language file in the language of the OS from the custom language file management system even when the supported language file in the language of the OS exists in the electronic device.
[0011] With this configuration, when the priority information indicates that the language file to be preferentially used between the supported language files and the custom language files is the custom language file, an electronic device that executes the application program of the present invention can obtain the custom language file for the OS language from the custom language file management system even if a supported language file for the OS language exists in the electronic device, thereby improving convenience.
[0012] The electronic device of the present invention is an electronic device that executes an application program, and when the electronic device does not have a supported language file in the language of the OS as a language file for a supported language that is supported as standard by the application program, the electronic device obtains the custom language file in the language of the OS from a custom language file management system that manages custom language files as language files that are not supported language files, and generates a screen for the application program using the obtained custom language file.
[0013] With this configuration, when a supported language file for the OS language does not exist in the electronic device, the electronic device of the present invention obtains a custom language file for the OS language from the custom language file management system and generates an application program screen using the obtained custom language file, so that a screen can be generated in a new language even if the application program is not upgraded.
[0014] The information processing system of the present invention comprises an electronic device that executes an application program and a custom language file management system that manages custom language files as language files that are not supported language files as language files of supported languages that are supported as standard by the application program, and is characterized in that when the supported language file in the language of the OS of the electronic device does not exist in the electronic device, the electronic device obtains the custom language file in the language of the OS from the custom language file management system and generates a screen for the application program using the obtained custom language file.
[0015] With this configuration, in the information processing system of the present invention, if the electronic device does not have a supported language file for the language of the electronic device's OS, the electronic device acquires a custom language file for the language of the electronic device's OS from the custom language file management system, and the electronic device generates the screen of the application program using the custom language file acquired by the electronic device, so that the screen can be generated in a new language even if the application program is not upgraded. [Effects of the Invention]
[0016] The application program, electronic device, and information processing system of the present invention can generate screens in new languages without requiring a version upgrade. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a block diagram of an information processing system according to a first embodiment of the present invention. [Figure 2] FIG. 2 is a block diagram of an example of the user terminal shown in FIG. 1 when configured as a PC. [Figure 3] 3A is a diagram showing an example of the contents of a Japanese language file stored in the storage unit shown in Fig. 2. FIG. 3B is a diagram showing an example of the contents of a German language file stored in the storage unit shown in Fig. 2. [Figure 4] 3 is a diagram showing an example of file judgment information stored in a storage unit shown in FIG. 2; FIG. [Figure 5] FIG. 2 is a block diagram of an example of the job spool system shown in FIG. 1 when configured with one computer. [Figure 6] 1 when a print-related process execution unit is started up in a user terminal. [Figure 7] 3(a) is a diagram showing an example of a screen generated using the Japanese language file shown in Fig. 3(a), and (b) is a diagram showing an example of a screen generated using the German language file shown in Fig. 3(b). [Figure 8] 1 in a case where a custom language file according to an organization to which a user of the print-related process execution program belongs is used in the user terminal. FIG. [Figure 9] 1 in a case where a custom language file according to an organization to which a user of the print-related process execution program belongs is used in a user terminal. [Figure 10] 10 is a flowchart of the operation of the job spool system shown in FIG. [Figure 11] FIG. 10 is a block diagram of an information processing system according to a second embodiment of the present invention. [Figure 12] FIG. 12 is a block diagram of the user terminal shown in FIG. [Figure 13] FIG. 13 is a diagram showing an example of a setting file shown in FIG. 12. [Figure 14] FIG. 12 is a block diagram of the job spool system shown in FIG. [Figure 15] FIG. 15 is a diagram showing an example of file judgment information shown in FIG. [Figure 16] FIG. 12 is a sequence diagram of the operation of the information processing system shown in FIG. 11 when the backend determines that a supported language file for the language of the OS of the user terminal does not exist. [Figure 17] FIG. 17 is a sequence diagram of the "custom language file request" shown in FIG. [Figure 18] FIG. 17 is a sequence diagram of “specifying a custom language file path” shown in FIG. [Figure 19] FIG. 10 is a block diagram of an information processing system according to a third embodiment of the present invention. [Figure 20] FIG. 20 is a block diagram of the user terminal shown in FIG. [Figure 21] FIG. 21 is a diagram showing an example of the setting file shown in FIG. 20. [Figure 22] FIG. 20 is a block diagram of the job spool system shown in FIG. 19. [Figure 23]FIG. 20 is a sequence diagram of a part of the operation of the information processing system shown in FIG. 19 when the backend receives a language file reference destination request. [Figure 24] FIG. 24 is a sequence diagram of operations subsequent to the operations shown in FIG. 23. DETAILED DESCRIPTION OF THE INVENTION
[0018] Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0019] (First embodiment) First, the configuration of an information processing system according to a first embodiment of the present invention will be described.
[0020] FIG. 1 is a block diagram of an information processing system 10 according to the present embodiment.
[0021] 1, the information processing system 10 includes a user terminal 20 as an electronic device used by a user. The information processing system 10 may include at least one other user terminal having a similar configuration to the user terminal 20. The user terminal may be configured, for example, as a PC (Personal Computer).
[0022] The information processing system 10 includes an image forming apparatus 30 as an electronic device used by a user. The information processing system 10 may include at least one other image forming apparatus having a similar configuration to the image forming apparatus 30. The image forming apparatus may be configured, for example, as a dedicated printer or an MFP (Multifunction Peripheral).
[0023] The information processing system 10 includes a job spool system 40 that spools print jobs. The job spool system 40 may be configured with a single computer such as a PC, or may be configured with multiple computers. For example, the job spool system 40 may be configured on a cloud.
[0024] The user terminal and the job spool system 40 can communicate with each other via a network 11 such as a LAN (Local Area Network) or the Internet. The image forming apparatus and the job spool system 40 can communicate with each other via the network 11.
[0025] FIG. 2 is a block diagram of an example of the user terminal 20 when configured as a PC.
[0026] As shown in Figure 2, the user terminal 20 comprises an operation unit 21, which is an operation device such as a keyboard or mouse through which various operations are input; a display unit 22, which is a display device such as an LCD (Liquid Crystal Display) that displays various information; a communication unit 23, which is a communication device that communicates with external devices via a network such as a LAN or the Internet, or directly via a wired or wireless connection without using a network; a memory unit 24, which is a non-volatile memory device such as a semiconductor memory or an HDD (Hard Disk Drive) that stores various information; and a control unit 25 that controls the entire user terminal 20.
[0027] The storage unit 24 can store a print-related process execution program 24a as an application program for executing processes related to printing. The print-related process execution program 24a may be installed in the user terminal 20 during the manufacturing stage of the user terminal 20, or may be additionally installed in the user terminal 20 from an external storage medium such as a USB (Universal Serial Bus) memory, or may be additionally installed in the user terminal 20 from a network.
[0028] The storage unit 24 is capable of storing language files (hereinafter referred to as "supported language files") 24b for the print-related processing execution program, which are files that compile source words and their translations. The language files are languages (hereinafter referred to as "supported languages") that the print-related processing execution program supports as standard. The storage unit 24 is capable of storing multiple supported language files in addition to the supported language file 24b. The storage unit 24 always stores an English supported language file. The storage unit 24 stores the supported language files in a folder for supported language files (hereinafter referred to as the "supported language file folder"). The supported language files are packaged in a file for installing the print-related processing execution program 24a or a file for upgrading the print-related processing execution program 24a, and are stored in the supported language file folder when the print-related processing execution program 24a is installed or upgraded on the user terminal 20.
[0029] The storage unit 24 can store a language file (hereinafter referred to as a "custom language file") 24c that is not a supported language file. The storage unit 24 can store multiple custom language files in addition to the custom language file 24c. The storage unit 24 stores custom language files in a folder for custom language files (hereinafter referred to as a "custom language file folder"). The custom language file folder is a different folder from the supported language file folder.
[0030] Fig. 3(a) is a diagram showing an example of the contents of a Japanese language file stored in the storage unit 24. Fig. 3(b) is a diagram showing an example of the contents of a German language file stored in the storage unit 24.
[0031] As shown in Fig. 3, a language file is a collection of original words and their translation results. The language file shown in Fig. 3 is drawn with some information omitted. The language file may be realized as a JSON (JavaScript Object Notation) file with the extension ".json", for example.
[0032] As shown in FIG. 2, the storage unit 24 can store file determination information 24d as information for determining language files.
[0033] FIG. 4 is a diagram showing an example of the file judgment information 24d stored in the storage unit 24. As shown in FIG.
[0034] As shown in Fig. 4, the file judgment information 24d is information indicating the correspondence between languages and file names of language files. The file judgment information 24d shown in Fig. 4 is drawn with some information omitted.
[0035] 2 includes, for example, a CPU (Central Processing Unit), a ROM (Read Only Memory) that stores programs and various data, and a RAM (Random Access Memory) that serves as a memory used as a work area for the CPU of the control unit 25. The CPU of the control unit 25 executes programs stored in the storage unit 24 or the ROM of the control unit 25.
[0036] The control unit 25 executes the print-related process execution program 24a to realize a print-related process execution unit 26 that executes processes related to printing. The print-related process execution unit 26 can connect the user terminal 20 to a job spool system 40 (see FIG. 1). The print-related process execution unit 26 can spool a print job in the job spool system 40. The print-related process execution unit 26 can display a list of print jobs spooled in the job spool system 40 on the display unit 22. The print-related process execution unit 26 can cause a print job spooled in the job spool system 40 to be executed by any of the image forming devices connected to the job spool system 40.
[0037] The print-related processing execution unit 26 includes a front end 26a that accepts operations input by the user to the operation unit 21 and displays information for the user on the display unit 22, and a back end 26b that has a local API (Application Programming Interface) for accepting requests issued from the front end 26a and sends the requests to the job spool system 40.
[0038] FIG. 5 is a block diagram of an example of a job spool system 40 configured by one computer.
[0039] As shown in FIG. 5, the job spool system 40 includes an operation unit 41, which is an operation device such as a keyboard or mouse through which various operations are input; a display unit 42, which is a display device such as an LCD that displays various information; a communication unit 43, which is a communication device that communicates with external devices via a network such as a LAN or the Internet, or directly via a wired or wireless connection without using a network; a memory unit 44, which is a non-volatile memory device such as a semiconductor memory or HDD that stores various information; and a control unit 45 that controls the entire job spool system 40.
[0040] The storage unit 44 can store a job spool program 44a for spooling print jobs. The job spool program 44a may be installed in the job spool system 40 during the manufacturing stage of the job spool system 40, or may be additionally installed in the job spool system 40 from an external storage medium such as a USB memory, or may be additionally installed in the job spool system 40 from a network.
[0041] The storage unit 44 can store a custom language file 44b. The storage unit 44 can store multiple custom language files in addition to the custom language file 44b. In other words, the job spool system 40 constitutes a custom language file management system that manages custom language files. The uploading of a custom language file to the job spool system 40 may be performed by the manufacturer of the print-related process execution program 24a (see FIG. 2), or by a party other than the manufacturer of the print-related process execution program 24a.
[0042] The storage unit 44 can store file judgment information 44c for determining the target language of a language file. The file judgment information 44c has the same configuration as the file judgment information 24d (see FIG. 4).
[0043] The control unit 45 includes, for example, a CPU, a ROM that stores programs and various data, and a RAM as a memory used as a work area for the CPU of the control unit 45. The CPU of the control unit 45 executes the programs stored in the storage unit 44 or the ROM of the control unit 45.
[0044] The control unit 45 executes the job spool program 44a to implement a job spool unit 45a that spools a print job.
[0045] Next, the operation of the information processing system 10 when the print-related process execution unit 26 is started in the user terminal 20 will be described.
[0046] FIG. 6 is a sequence diagram of the operation of the information processing system 10 when the print-related process execution unit 26 is started up in the user terminal 20. As shown in FIG.
[0047] The user can instruct the user terminal 20 to start the print-related process execution unit 26 via the operation unit 21 of the user terminal 20. When the control unit 25 of the user terminal 20 is instructed to start the print-related process execution unit 26, the control unit 25 starts the print-related process execution unit 26.
[0048] When the print-related process execution unit 26 is started, the front end 26a of the print-related process execution unit 26 acquires the language of the OS (Operating System) of the user terminal 20, as shown in FIG. 6 (S101).
[0049] When the process of S101 is completed, the front end 26a passes a request for the reference destination of the language file used by the front end 26a (hereinafter referred to as the "language file reference destination request") to the back end 26b (S102). The front end 26a includes the language of the OS acquired in S101 in the language file reference destination request.
[0050] When the backend 26b receives the language file reference destination request in S102, it determines whether or not a support language file for the language of the OS of the user terminal 20 exists (S103). Specifically, if a support language file with a file name that is associated in the file determination information 24d with the language of the OS included in the language file reference destination request exists in the supported language file folder, the backend 26b determines that a support language file for the language of the OS of the user terminal 20 exists, and if a support language file with a file name that is associated in the file determination information 24d with the language of the OS included in the language file reference destination request does not exist in the supported language file folder, the backend 26b determines that a support language file for the language of the OS of the user terminal 20 does not exist.
[0051] When the backend 26b determines in S103 that a supported language file exists for the language of the OS of the user terminal 20, it identifies the path of the supported language file whose file name is associated in the file determination information 24d with the language of the OS included in the language file reference request as the reference for the language file to be used by the frontend 26a (S104).
[0052] If the backend 26b determines in S103 that a supported language file for the language of the OS of the user terminal 20 does not exist, it sends a request for a custom language file for the language of the OS of the user terminal 20 (hereinafter referred to as a "custom language file request") to the job spool system 40 (S105). The backend 26b includes the language of the OS included in the language file reference destination request in the custom language file request.
[0053] When the job spool unit 45a of the job spool system 40 receives the custom language file request sent in S105, it determines whether or not the custom language file that is the target of the custom language file request exists (S106). Specifically, the job spool unit 45a determines that the custom language file that is the target of the custom language file request exists if a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request exists in the storage unit 44, and determines that the custom language file that is the target of the custom language file request does not exist if a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request does not exist in the storage unit 44.
[0054] If the job spool unit 45a determines in S106 that a custom language file corresponding to the custom language file request exists, it sends the custom language file with the file name associated in the file determination information 44c with the language of the OS included in the custom language file request to the user terminal 20 (S107).
[0055] When the backend 26b of the user terminal 20 receives the custom language file sent in S107, it overwrites and stores the received custom language file in the custom language file folder (S108).
[0056] When the process of S108 ends, the backend 26b specifies the path of the custom language file stored in S108 as the reference destination of the language file used by the frontend 26a (S109).
[0057] If the job spool unit 45a of the job spool system 40 determines in S106 that the custom language file requested does not exist, it transmits a notification to the user terminal 20 that the custom language file does not exist (S110).
[0058] When the backend 26b of the user terminal 20 receives the notification sent in S110, it identifies the path of the English supported language file as the reference destination of the language file used by the frontend 26a (S111).
[0059] When the process of S104, S109, or S111 is completed, the backend 26b notifies the frontend 26a of the reference destination identified in S104, S109, or S111 (S112).
[0060] Upon receiving the notification in S112, the front end 26a reads the language file present in the reference destination notified in S112 (S113).
[0061] When the process of S113 is completed, the front end 26a uses the language file read in S113 to generate a screen to be displayed on the display unit 22 (S114).
[0062] Fig. 7(a) is a diagram showing an example of a screen generated using the Japanese language file shown in Fig. 3(a), and Fig. 7(b) is a diagram showing an example of a screen generated using the German language file shown in Fig. 3(b).
[0063] As shown in Figure 7, in the screen generated using a language file, the "source words" contained in the language file on the original screen are words in the target language of the language file.
[0064] In the above, a custom language file that is independent of the organization to which the user of the print-related process execution program 24a belongs is used in the user terminal 20. However, a custom language file that corresponds to the organization to which the user of the print-related process execution program 24a belongs may also be used in the user terminal 20.
[0065] The following describes the configuration of the information processing system 10 when a custom language file according to the organization to which the user of the print-related process execution program 24a belongs is used in the user terminal 20.
[0066] FIG. 8 is a block diagram of an example of the user terminal 20 in which a custom language file according to the organization to which the user of the print-related process execution program 24a belongs is used in the user terminal 20. In FIG.
[0067] The configuration of the user terminal 20 shown in FIG. 8 is the same as the configuration of the user terminal 20 shown in FIG. 2, except for the configuration described below.
[0068] 8 can store organization ID information 24e indicating identification information of an organization to which a user of the print-related process execution program 24a belongs (hereinafter, the organization identification information will be referred to as an "organization ID"). The user can set the organization ID in the organization ID information 24e via the operation unit 21.
[0069] FIG. 9 is a block diagram of an example of a job spool system 40 in which a custom language file according to the organization to which the user of the print-related process execution program 24a belongs is used in the user terminal 20. In FIG.
[0070] The configuration of the job spool system 40 shown in FIG. 9 is the same as the configuration of the job spool system 40 shown in FIG. 5, except for the configuration described below.
[0071] The storage unit 44 of the job spool system 40 shown in Fig. 9 can store standard custom language files and custom language files for specific organizations. The storage unit 44 stores standard custom language files in a folder for standard custom language files (hereinafter referred to as the "standard custom language file folder"), and stores custom language files for specific organizations in a folder for custom language files for specific organizations (hereinafter referred to as the "specific organization custom language file folder"). A specific organization custom language file folder exists for each organization.
[0072] The storage unit 44 of the job spool system 40 shown in FIG. 9 can store folder information 44d that indicates the correspondence between an organization ID and a folder for custom language files for a specific organization.
[0073] The operation of the information processing system 10 when a custom language file according to the organization to which the user of the print-related process execution program 24a belongs is used in the user terminal 20 will be described below.
[0074] The operation of the information processing system 10 when a custom language file corresponding to the organization to which the user of the print-related processing execution program 24a belongs is used on the user terminal 20 is the same as the operation of the information processing system 10 when a custom language file independent of the organization to which the user of the print-related processing execution program 24a belongs is used on the user terminal 20, except for the operations described below.
[0075] The backend 26b of the user terminal 20 shown in FIG. 8 includes the organization ID indicated in the organization ID information 24e in the custom language file request sent to the job spool system 40 in S105 (see FIG. 6).
[0076] The job spool unit 45a of the job spool system 40 shown in FIG. 9 executes the operations shown in FIG. 10 instead of the processes of S106, S107 and S110 shown in FIG.
[0077] FIG. 10 is a flowchart of the operation of the job spool system 40 shown in FIG.
[0078] When the job spool unit 45a of the job spool system 40 shown in FIG. 9 receives the custom language file request sent in S105 (see FIG. 6), it executes the operation shown in FIG.
[0079] As shown in FIG. 10, the job spool unit 45a determines whether a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request exists in the folder for custom language files for a specific organization that is associated in the folder information 44d with the organization ID included in the custom language file request (S121).
[0080] If the job spool unit 45a determines in S121 that a custom language file with a file name associated in the file determination information 44c with the language of the OS included in the custom language file request exists in the custom language file folder for a specific organization, which is associated in the folder information 44d with the organization ID included in the custom language file request, the job spool unit 45a transmits the custom language file with the file name associated in the file determination information 44c with the language of the OS included in the custom language file request, which exists in the custom language file folder for a specific organization, which is associated in the folder information 44d with the organization ID included in the custom language file request, to the user terminal 20 (S122), and ends the operation shown in Figure 10. When the backend 26b of the user terminal 20 receives the custom language file transmitted in S122, it executes the process of S108 (see Figure 6).
[0081] When the job spool unit 45a determines in S121 that a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request does not exist in the folder for custom language files for a specific organization that is associated in the folder information 44d with the organization ID included in the custom language file request, the job spool unit 45a determines whether a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request exists in the folder for standard custom language files (S123).
[0082] If the job spool unit 45a determines in S123 that a custom language file with a file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request exists in the standard custom language file folder, the job spool unit 45a sends the custom language file with the file name that is associated in the file determination information 44c with the language of the OS included in the custom language file request and that exists in the standard custom language file folder to the user terminal 20 (S124), and ends the operation shown in Fig. 10. When the backend 26b of the user terminal 20 receives the custom language file sent in S124, it executes the process of S108 (see Fig. 6).
[0083] If the job spool unit 45a determines in S123 that a custom language file with a file name associated in the file determination information 44c with the language of the OS included in the custom language file request does not exist in the standard custom language file folder, it sends a notification to the user terminal 20 that the custom language file does not exist (S125) and terminates the operation shown in Fig. 10. When the backend 26b of the user terminal 20 receives the notification sent in S125, it executes the process of S111 (see Fig. 6).
[0084] As described above, if the user terminal 20 does not have a supported language file for the OS language, the user terminal 20 obtains a custom language file for the OS language from the job spool system 40 (S105 and S107) and generates a screen using the obtained custom language file (S114).Therefore, the screen of the print-related processing execution program 24a can be generated in a new language even if the print-related processing execution program 24a is not upgraded.
[0085] The user terminal 20 can generate a screen of the print-related processing execution program 24a in a new language even if the print-related processing execution program 24a is not upgraded, so that the time required to be able to generate a screen of the print-related processing execution program 24a in a new language can be shortened.
[0086] If the user terminal 20 does not have a supported language file for the OS language, the user terminal 20 acquires a custom language file for the OS language from the job spool system 40 and generates a screen using the acquired custom language file, so that the screen of the print-related process execution program 24a can be generated in a new language without a user instruction. This improves the user convenience of the user terminal 20.
[0087] (Second embodiment) First, the configuration of an information processing system according to the second embodiment of the present invention will be described.
[0088] The configuration of the information processing system according to this embodiment is the same as the configuration of the information processing system 10 (see FIG. 1) according to the first embodiment, except for the configuration described below. Of the components of the information processing system according to this embodiment, the components similar to the components of the information processing system 10 are assigned the same reference numerals as the components of the information processing system 10, and detailed description thereof will be omitted.
[0089] FIG. 11 is a block diagram of an information processing system 210 according to this embodiment.
[0090] As shown in FIG. 11, the configuration of the information processing system 210 is the same as that of the information processing system 10, except that the user terminal 220 and the job spool system 240 are replaced with the user terminal 20 (see FIG. 1) and the job spool system 40 (see FIG. 1).
[0091] FIG. 12 is a block diagram of the user terminal 220.
[0092] As shown in Figure 12, the configuration of the user terminal 220 is similar to that in which the user terminal 20 can store the print-related processing execution program 224a in the memory unit 24 instead of the print-related processing execution program 24a (see Figure 2), and the user terminal 20 can store the setting file 224e indicating the settings for determining the language file to be used by the front end 26a in the memory unit 24.
[0093] FIG. 13 is a diagram showing an example of the setting file 224e.
[0094] 13, the configuration file 224e includes the date as version information of the custom language file. The configuration file 224e may be realized as a text file with the extension ".txt" in which data is written in JSON format, for example.
[0095] 12, the control unit 25 executes the print-related process execution program 224a to realize the print-related process execution unit 226 that executes processes related to printing. The configuration of the print-related process execution unit 226 is the same as the configuration of the print-related process execution unit 26 (see FIG. 2) except that the backend 226b is replaced with the backend 26b (see FIG. 2).
[0096] FIG. 14 is a block diagram of a job spool system 240.
[0097] As shown in FIG. 14, the configuration of the job spool system 240 is similar to that of the job spool system 40, which can store the job spool program 244a and the file determination information 244c in the storage unit 44 instead of the job spool program 44a (see FIG. 5) and the file determination information 44c (see FIG. 5), and can store a setting file indicating settings for determining the language file to be used by the user terminal in the storage unit 44. A setting file exists for each custom language file, such as setting file 244d corresponding to custom language file 44b. The configuration of the setting file stored in the storage unit 44 is similar to that of setting file 224e (see FIG. 13). The setting file may be uploaded to the job spool system 240 at the same time as the corresponding custom language file. The uploading of the custom language file and the setting file to the job spool system 240 may be performed by the manufacturer of the print-related process execution program 224a (see FIG. 12) or by a party other than the manufacturer of the print-related process execution program 224a.
[0098] FIG. 15 is a diagram showing an example of the file judgment information 244c.
[0099] As shown in Fig. 15, the file determination information 244c is information indicating the correspondence between the language, the file name of the language file, and the file name of the setting file. The file determination information 244c shown in Fig. 15 is drawn with some information omitted.
[0100] As shown in FIG. 14, the control unit 45 executes a job spool program 244a to implement a job spool unit 245a that spools a print job.
[0101] Next, the operation of the information processing system 210 will be described.
[0102] The operation of the information processing system 210 is similar to that of the information processing system 10, except for the operations described below.
[0103] The operation of the information processing system 210 when the print-related process execution unit 226 is started in the user terminal 220 is the same as the operation shown in FIG. 6 except that the processes shown in FIGS. 16 to 18 are executed instead of the processes in S105 to S111.
[0104] Fig. 16 is a sequence diagram of the operation of the information processing system 210 when the backend 226b determines that there is no supported language file for the language of the OS of the user terminal 220. Fig. 17 is a sequence diagram of the "custom language file request" shown in Fig. 16. Fig. 18 is a sequence diagram of the "custom language file path identification" shown in Fig. 16.
[0105] As shown in Figures 16 to 18, when the backend 226b determines in S103 (see Figure 6) that a supported language file for the language of the OS of the user terminal 220 does not exist, it determines whether a setting file for the language of the OS of the user terminal 220 exists in the folder for custom language files (S301).
[0106] If the backend 226b determines in S301 that the setting file for the language of the OS of the user terminal 220 does not exist in the custom language file folder, it sends a request for the setting file for the language of the OS of the user terminal 220 (hereinafter referred to as the "setting file request") to the job spool system 240 (S302). The backend 226b includes the OS language included in the language file reference destination request in the setting file request.
[0107] When the job spool unit 245a of the job spool system 240 receives the configuration file request transmitted in S302, it determines whether or not the configuration file targeted by the configuration file request exists (S303). Specifically, if a configuration file with a file name associated in the file determination information 244c with the language of the OS included in the configuration file request exists in the storage unit 44, the job spool unit 245a determines that the configuration file targeted by the configuration file request exists, and if a configuration file with a file name associated in the file determination information 244c with the language of the OS included in the configuration file request does not exist in the storage unit 44.
[0108] If the job spool unit 245a determines in S303 that the configuration file requested by the configuration file request exists, it sends the configuration file with the file name associated in the file determination information 244c with the language of the OS included in the configuration file request to the user terminal 220 (S304).
[0109] When the backend 226b of the user terminal 220 receives the setting file sent in S304, it sends a custom language file request to the job spool system 240 (S321).
[0110] When the job spool unit 245a of the job spool system 240 receives the custom language file request sent in S321, it sends to the user terminal 220 a custom language file with a file name that is associated in the file determination information 244c with the OS language included in the custom language file request (S322).
[0111] When the backend 226b of the user terminal 220 receives the custom language file sent in S322, it stores the setting file sent and received in S304 and the custom language file sent and received in S322 in a folder for custom language files (S323).
[0112] When the process of S323 is completed, the backend 26b specifies the path of the custom language file stored in S323 as the reference destination of the language file used by the frontend 26a (S324).
[0113] If the job spool unit 245a of the job spool system 240 determines in S303 that the setting file requested does not exist, it transmits a notification to the user terminal 220 that the setting file does not exist (S305).
[0114] When the backend 226b of the user terminal 220 receives the notification sent in S305, it identifies the path of the English supported language file as the reference destination of the language file used by the frontend 26a (S306).
[0115] If the backend 226b determines in S301 that the setting file for the language of the OS of the user terminal 220 exists in the custom language file folder, it sends a setting file request to the job spool system 240 (S307).
[0116] When the job spool unit 245a of the job spool system 240 receives the configuration file request sent in S307, it sends a configuration file with a file name that is associated in the file determination information 244c with the language of the OS included in the configuration file request to the user terminal 220 (S308).
[0117] When the backend 226b of the user terminal 220 receives the setting file sent in S308, it determines whether the setting file has been updated (S341). Specifically, the backend 226b determines that the setting file has been updated if the date in the setting file sent and received in S308 is newer than the date in the setting file existing in the custom language file folder, and determines that the setting file has not been updated if the date in the setting file sent and received in S308 is not newer than the date in the setting file existing in the custom language file folder.
[0118] If the backend 226b determines in S341 that the configuration file has been updated, it sends a custom language file request to the job spool system 240 (S342).
[0119] When the job spool unit 245a of the job spool system 240 receives the custom language file request sent in S342, it sends to the user terminal 220 a custom language file with a file name that is associated in the file determination information 244c with the OS language included in the custom language file request (S343).
[0120] When the backend 226b of the user terminal 220 receives the custom language file sent in S343, it overwrites and stores the setting file sent and received in S308 and the custom language file sent and received in S343 in the custom language file folder (S344).
[0121] When the process of S344 ends, the backend 26b specifies the path of the custom language file stored in S344 as the reference destination of the language file used by the frontend 26a (S345).
[0122] If the backend 226b determines in S341 that the configuration file has not been updated, it identifies the path of the custom language file present in the custom language file folder as the reference destination of the language file used by the frontend 26a (S346).
[0123] In the process of S112 (see FIG. 6), the backend 226b notifies the frontend 26a of the reference destination identified in S104, S306, S324, S345, or S346.
[0124] Similar to the information processing system 10, the information processing system 210 may be configured so that a setting file and a custom language file according to the organization to which the user of the print-related processing execution program 224a belongs are used on the user terminal 220.
[0125] In the above, the job spooling unit 245a of the job spooling system 240 notifies the user terminal 220 of the date as version information of the custom language file by sending a settings file including the date as version information of the custom language file to the user terminal 220. However, the job spooling unit 245a of the job spooling system 240 may notify the user terminal 220 of the date as version information of the custom language file without sending a settings file to the user terminal 220. For example, the job spooling unit 245a may notify the user terminal 220 of the date as version information of the custom language file by including the date as version information of the custom language file in a request or response to a REST API of the job spooling system 240.
[0126] When the job spool system 240 does not send a configuration file to the user terminal 220, it may store the date as version information of the custom language file, for example, in a database. Similarly, when the user terminal 220 does not receive a configuration file from the job spool system 240, it may store the date as version information of the custom language file, for example, in a database. When the information processing system 210 does not send a configuration file between the user terminal 220 and the job spool system 240, the date as version information of the custom language file may be input to the job spool system 240 without the configuration file being uploaded to the job spool system 240.
[0127] As described above, if the version of the custom language file managed by the job spool system 240 is the same as or older than the version of the custom language file currently being used by the user terminal 220, the user terminal 220 stops obtaining the custom language file for the OS language from the job spool system 240 (S346), thereby reducing the load on the job spool system 240.
[0128] Furthermore, when the job spool system 240 notifies the user terminal 220 of the date as version information of the custom language file by including the date as version information of the custom language file in the REST API request or response, the load on the job spool system 240 can be further reduced by not sending the configuration file.
[0129] The user terminal 220 can reduce the load on the job spool system 240, thereby reducing the possibility that the job spool system 240 will stop due to the load.
[0130] (Third embodiment) First, the configuration of an information processing system according to the third embodiment of the present invention will be described.
[0131] The configuration of the information processing system according to this embodiment is the same as the configuration of the information processing system 210 according to the second embodiment (see FIG. 11), except for the configuration described below. Of the components of the information processing system according to this embodiment, the components similar to the components of the information processing system 210 are assigned the same reference numerals as the components of the information processing system 210, and detailed description thereof will be omitted.
[0132] FIG. 19 is a block diagram of an information processing system 410 according to this embodiment.
[0133] As shown in Figure 19, the configuration of the information processing system 410 is the same as that of the information processing system 210, except that the user terminal 420 and job spool system 440 are replaced with the user terminal 220 (see Figure 11) and the job spool system 240 (see Figure 11).
[0134] FIG. 20 is a block diagram of the user terminal 420.
[0135] As shown in Figure 20, the configuration of the user terminal 420 is the same as the configuration in which the user terminal 220 can store the print-related processing execution program 424a and the setting file 424e in the memory unit 24 instead of the print-related processing execution program 224a (see Figure 12) and the setting file 224e (see Figure 12).
[0136] FIG. 21 is a diagram showing an example of the setting file 424e.
[0137] 21, the settings file 424e includes the date as version information of the custom language file, and priority information that indicates which of the supported language files and the custom language file is to be used preferentially. The settings file 424e may be realized as a text file with the extension ".txt" in which data is written in JSON format, for example.
[0138] 20, the control unit 25 executes the print-related process execution program 424a to realize a print-related process execution unit 426 that executes processes related to printing. The configuration of the print-related process execution unit 426 is the same as the configuration of the print-related process execution unit 226 (see FIG. 12) except that the backend 426b is replaced with the backend 226b (see FIG. 12).
[0139] FIG. 22 is a block diagram of a job spool system 440.
[0140] As shown in FIG. 22, the configuration of the job spool system 440 is similar to that of the job spool system 240, which can store job spool program 444a in the storage unit 44, instead of job spool program 244a (see FIG. 14). The setting files in the job spool system 440 are different from those in the job spool system 240. A setting file in the job spool system 440 exists for each custom language file, such as setting file 444d corresponding to custom language file 44b. The configuration of the setting files stored in the storage unit 44 is similar to the configuration of setting file 424e (see FIG. 21). The setting file may be uploaded to the job spool system 440 at the same time as the corresponding custom language file. The uploading of the custom language file and setting file to the job spool system 440 may be performed by the manufacturer of the print-related process execution program 424a (see FIG. 20), or may be performed by a party other than the manufacturer of the print-related process execution program 424a.
[0141] The control unit 45 executes the job spool program 444a to implement a job spool unit 445a that spools a print job.
[0142] Next, the operation of the information processing system 410 will be described.
[0143] The operation of the information processing system 410 is similar to the operation of the information processing system 210, except for the operations described below.
[0144] The operation of the information processing system 410 when the print-related process execution unit 426 is activated in the user terminal 420 is the same as the operation shown in FIG. 6 except that the processes shown in FIGS. 23 and 24 are executed instead of the processes in S103 to S111.
[0145] 23 is a sequence diagram of a part of the operation of the information processing system 410 when the backend 426b receives a language file referent request. FIG. 24 is a sequence diagram of the operation subsequent to the operation shown in FIG.
[0146] As shown in Figures 23 and 24, when the backend 426b receives a language file reference request in S102 (see Figure 6), it determines whether the language setting file for the OS of the user terminal 420 exists in the custom language file folder (S501).
[0147] If the backend 426b determines in S501 that the setting file for the language of the OS of the user terminal 420 does not exist in the custom language file folder, it sends a setting file request to the job spool system 440 (S502).
[0148] When the job spool unit 445a of the job spool system 440 receives the setting file request sent in S502, it determines whether or not the setting file that is the target of the setting file request exists (S503), similar to the process of S303 (see FIG. 16).
[0149] If the job spool unit 445a determines in S503 that the configuration file targeted by the configuration file request exists, it sends the configuration file with the file name associated in the file determination information 244c with the language of the OS included in the configuration file request to the user terminal 420 (S504).
[0150] When the backend 426b of the user terminal 420 receives the setting file sent in S504, it determines which language file to use preferentially from the supported language files and the custom language files based on the priority information in the setting file sent and received in S504 (S505).
[0151] If the backend 426b determines in S505 that the language file to be preferentially used between the supported language file and the custom language file is the supported language file, it determines whether a supported language file exists for the language of the OS of the user terminal 420 (S506), similar to the processing of S103 (see Figure 6).
[0152] If the backend 426b determines in S506 that a supported language file exists for the language of the OS of the user terminal 420, it identifies the path of the supported language file whose file name is associated in the file determination information 24d with the language of the OS included in the language file reference request as the reference for the language file to be used by the frontend 26a (S507).
[0153] If the backend 426b determines in S506 that a supported language file for the language of the OS of the user terminal 420 does not exist, the information processing system 410 executes the same processes as those of S321 to S324 (see FIG. 17).
[0154] If the backend 426b determines in S505 that the language file to be preferentially used between the supported language files and the custom language file is the custom language file, the information processing system 410 executes the same processes as those of S321 to S324 (see FIG. 17).
[0155] If the job spool unit 445a of the job spool system 440 determines in S503 that the setting file requested does not exist, it transmits a notification to the user terminal 420 that the setting file does not exist (S508).
[0156] When the backend 426b of the user terminal 420 receives the notification sent in S508, it determines whether or not a supported language file for the language of the OS of the user terminal 420 exists (S509).
[0157] If the backend 426b determines in S509 that a supported language file exists for the language of the OS of the user terminal 420, it identifies the path of the supported language file whose file name is associated in the file determination information 24d with the language of the OS included in the language file reference request as the reference for the language file to be used by the frontend 26a (S510).
[0158] If the backend 426b determines in S509 that a support language file for the language of the OS of the user terminal 420 does not exist, it specifies the path of the support language file for English as the reference destination for the language file used by the frontend 26a (S511).
[0159] If the backend 426b determines in S501 that the setting file for the language of the OS of the user terminal 420 exists in the custom language file folder, it sends a setting file request to the job spool system 440 (S512).
[0160] When the job spool unit 445a of the job spool system 440 receives the configuration file request sent in S512, it sends a configuration file with a file name that is associated in the file determination information 244c with the language of the OS included in the configuration file request to the user terminal 420 (S513).
[0161] When the backend 426b of the user terminal 420 receives the setting file sent in S513, it determines which language file to use preferentially from the supported language files and the custom language files based on the priority information in the setting file sent and received in S513 (S514).
[0162] If the backend 426b determines in S514 that the language file to be preferentially used between the supported language file and the custom language file is the supported language file, it determines whether a supported language file exists for the language of the OS of the user terminal 420 (S515), similar to the processing of S103 (see Figure 6).
[0163] If the backend 426b determines in S515 that a supported language file exists for the language of the OS of the user terminal 420, it identifies the path of the supported language file whose file name is associated in the file determination information 24d with the language of the OS included in the language file reference request as the reference for the language file to be used by the frontend 26a (S516).
[0164] If the backend 426b determines in S515 that a supported language file for the language of the OS of the user terminal 420 does not exist, the information processing system 410 executes the same processes as those in S341 to S346 (see FIG. 18).
[0165] If the backend 426b determines in S514 that the language file to be preferentially used between the supported language files and the custom language file is the custom language file, the information processing system 410 executes the same processes as those in S341 to S346 (see FIG. 18).
[0166] In the process of S112 (see FIG. 6), the backend 426b notifies the frontend 26a of the reference destination identified in S324, S345, S346, S507, S510, S511, or S516.
[0167] Similar to the information processing system 10, the information processing system 410 may be configured so that a setting file and a custom language file according to the organization to which the user of the print-related processing execution program 424a belongs are used on the user terminal 420.
[0168] In the above, the job spooling unit 445a of the job spooling system 440 notifies the user terminal 420 of the date as version information of the custom language file and the priority information by sending a settings file to the user terminal 420 that includes the date as version information of the custom language file and the priority information. However, the job spooling unit 445a of the job spooling system 440 may notify the user terminal 420 of the date as version information of the custom language file and the priority information without sending a settings file to the user terminal 420. For example, the job spooling unit 445a may notify the user terminal 420 of the date as version information of the custom language file and the priority information by including the date as version information of the custom language file and the priority information in a request or response to a REST API of the job spooling system 440.
[0169] When the job spool system 440 does not transmit a configuration file to the user terminal 420, the job spool system 440 may store, for example, in a database, the date as version information of the custom language file and the priority information. Similarly, when the user terminal 420 does not receive a configuration file from the job spool system 440, the user terminal 420 may store, for example, in a database, the date as version information of the custom language file and the priority information. When the information processing system 410 does not transmit a configuration file between the user terminal 420 and the job spool system 440, the date as version information of the custom language file and the priority information may be input to the job spool system 440 without the configuration file being uploaded to the job spool system 440.
[0170] In the above, the user terminal 420 operates according to the date as version information of the custom language file. However, the user terminal 420 may be configured not to operate according to the date as version information of the custom language file, like the user terminal 20 according to the first embodiment.
[0171] As described above, when the priority information indicates that the language file to be preferentially used between the supported language files and the custom language files is a custom language file, the user terminal 420 obtains the custom language file for the OS language from the job spool system 440 (S321 to S324, S341 to S346) even when the supported language file for the OS language exists on the user terminal 420, thereby improving convenience.
[0172] For example, if a custom language file for the OS language is uploaded to the job spool system 440 and then the print-related process execution program 424a is upgraded and a support language file for the OS language is introduced, the person who uploaded the custom language file for the OS language to the job spool system 440 may wish for the screen of the print-related process execution program 424a to be generated using the custom language file for the OS language rather than the support language file for the OS language. The user terminal 420 can accommodate such a request.
[0173] In each of the above-described embodiments, a print-related processing execution program is used as the application program, but the application program of the present invention may be a program other than a print-related processing execution program. [Explanation of symbols]
[0174] 10 Information Processing Systems 20 User terminals (electronic devices) 24a Printing-related processing execution program (application program) 24b Supported Language Files 24c Custom Language File 40 Job spool system (custom language file management system) 44b Custom Language File 210 Information Processing Systems 220 User terminals (electronic devices) 224a Print-related processing execution program (application program) 240 Job Spool System (Custom Language File Management System) 410 Information Processing Systems 420 User terminals (electronic devices) 424a Printing-related processing execution program (application program) 440 Job Spool System (Custom Language File Management System)
Claims
1. performed by electronic devices, An application program characterized by causing an electronic device to acquire a custom language file in the language of an OS from a custom language file management system that manages custom language files as language files that are not supported language files when the electronic device does not have a supported language file in the language of the OS as a language that is supported as a standard language, and causing the electronic device to generate a screen using the custom language file acquired by the electronic device.
2. The application program of claim 1, wherein the application program causes the electronic device to obtain from the custom language file management system the version of the custom language file managed by the custom language file management system, and when the version of the custom language file managed by the custom language file management system is the same as or older than the version of the custom language file currently being used by the electronic device, causes the electronic device to stop obtaining the custom language file in the language of the OS from the custom language file management system.
3. The application program of claim 1, further comprising: causing the electronic device to obtain priority information from the custom language file management system indicating which language file is to be preferentially used among the supported language files and the custom language files; and, when the priority information indicates that the custom language file is to be preferentially used among the supported language files and the custom language files, causing the electronic device to obtain the custom language file in the language of the OS from the custom language file management system even when the supported language file in the language of the OS exists in the electronic device.
4. An electronic device that executes an application program, When the electronic device does not have a supported language file in the language of the OS as a language supported by the application program as standard, the electronic device obtains the custom language file in the language of the OS from a custom language file management system that manages custom language files as language files that are not supported language files, and generates a screen for the application program using the obtained custom language file.
5. an electronic device that executes an application program; a custom language file management system that manages custom language files as language files that are not supported language files as language files of supported languages that are supported as standard by the application program; Equipped with An information processing system characterized in that, when the supported language file for the language of the OS of the electronic device does not exist in the electronic device, the electronic device obtains the custom language file for the language of the OS from the custom language file management system and generates the screen of the application program using the obtained custom language file.
Citation Information
Patent Citations
Information processing system and information processing program
JP2008084233A