Information processing terminal and data management system

By building applications and operating systems into information processing terminals, equipped with message queues and processing units, the problem of application interruption caused by failure to connect to the server is solved, and continuous application operation and data synchronization in a connectionless environment are achieved.

CN120631455APending Publication Date: 2025-09-12DENSO WAVE INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202510283544.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-11
Filing Date
2025-03-11
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

In the prior art, an information processing terminal cannot continue to operate an application when it cannot connect to a server, especially in an environment such as a factory or warehouse where wireless communication waves are difficult to reach, resulting in the application being unable to operate normally.

Method used

The information processing terminal has built-in applications and operating systems, and is equipped with a message queue and processing unit. It can independently update and manage data when it is unable to communicate with the server, save data update events through the message queue, and synchronize data when the connection is restored.

Benefits of technology

This allows applications to continue running even when they cannot connect to the server, improving application reliability and computer resource utilization efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120631455A_ABST
    Figure CN120631455A_ABST
Patent Text Reader

Abstract

An information processing terminal is provided with a memory, a processor that loads and executes a program from the memory, and a transceiver that transmits and receives a message to and from a server. A program of a predetermined application, a program of an operating system for managing the predetermined application, data obtained by execution of the predetermined application, a message queue, and programs of a first processing unit and a second processing unit are stored in the memory. The first processing unit captures a data update event generated by execution of the predetermined application and stores a message related to the data update event in the message queue, and the second processing unit is configured to execute the data update event when the information processing terminal is capable of communicating with the server. And a data synchronization unit that performs data synchronization with the server by transmitting the message stored in the message queue to the server, the predetermined application operating independently of the first processing unit and the second processing unit.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an information processing terminal and a data management system. Background Art

[0002] In order to facilitate the construction of online applications using information processing terminals that are not equipped with a general-purpose operating system (especially online applications whose main purpose is to share data between information processing terminals and servers), many development architectures for online applications are provided. With such a development architecture, a central device can be set up between the server and the information processing terminal. This central device converts screen description information (such as HTML: Hyper-Text Markup Language information) that is an example of the execution result of a web application running on the server into commands that can be interpreted by the information processing terminal. This allows applications that cooperate with the server to run on information processing terminals with limited computer resources (such as processor performance and memory capacity). Such technology is designed as a software execution system (for example, JP4707302B2).

[0003] In the software execution system, the central device converts screen description information specifying the operational guidance elements and operational conditions to be displayed on the terminal device screen into instructions to the terminal device and transmits the instructions to the terminal device. Following the instructions received from the central device, the terminal device performs processing specified by the central device, such as accepting input of the user's instruction operation. Summary of the Invention

[0004] However, technologies like the aforementioned software execution system presuppose that the terminal device is always connected to the server. Therefore, if the terminal device becomes unable to connect to the server and becomes unable to communicate, the application cannot continue. This is particularly prone to occurring in applications used in environments such as factories and warehouses, where radio waves for wireless communication are difficult to fully penetrate. Consequently, it becomes difficult to continue the application's operation.

[0005] The present disclosure is made to solve the above-mentioned technical problems, and an object of the present disclosure is to provide an information processing terminal that can continue the operation of an application in cooperation with a server even when the terminal cannot connect to the server.

[0006] According to one embodiment of the present disclosure, an information processing terminal comprises: a memory; a processor, which loads and executes a program from the memory; and a transceiver, which sends and receives messages to and from a server, wherein the memory stores: a program for a specified application; a program for an operating system that manages the specified application; data obtained by executing the specified application; a message queue; and programs for a first processing unit and a second processing unit, the processor executes the program stored in the memory to implement the specified application, the operating system, the first processing unit and the second processing unit, the first processing unit captures a data update event generated by the execution of the specified application and saves a message related to the data update event to the message queue, the second processing unit synchronizes data with the server by sending the message related to the data update event stored in the message queue to the server when the information processing terminal is able to communicate with the server, and the specified application operates independently of the first processing unit and the second processing unit. BRIEF DESCRIPTION OF THE DRAWINGS

[0007] Figure 1 It is a diagram for explaining a data management system including an information processing terminal according to the first embodiment.

[0008] Figure 2A This is a rough example Figure 1 The block diagram of the hardware structure of the information processing terminal shown in FIG.

[0009] Figure 2B This is a rough example Figure 2A The block diagram of the wireless tag processing unit is shown.

[0010] Figure 2C This is a rough example Figure 2A The block diagram of the information code reading unit is shown.

[0011] Figure 3 Is to express Figure 1 The block diagram shows the functional structure of the information processing terminal related to data acquisition and transmission and reception.

[0012] Figure 4A This diagram illustrates the read list, which corresponds to the theoretical inventory list, received from the server when the sample application starts operating.

[0013] Figure 4B This is an example from Figure 4A The following diagram illustrates an updated read list.

[0014] Figure 4C This is an example from Figure 4A Towards Figure 4BThis diagram illustrates the message of the data update event captured when updating the read list.

[0015] Figure 5 This is a flowchart schematically showing the execution schedule of the application and the operating system in the first embodiment.

[0016] Figure 6 Therefore Figure 5 A flowchart illustrating a specific example of the execution schedule shown.

[0017] Figure 7 This is a sequence diagram illustrating the flow of data acquisition and transmission / reception in each information processing terminal and data transmission in the relay server in the second embodiment.

[0018] Figure 8 This is a sequence diagram illustrating the flow of data acquisition and transmission / reception in each information processing terminal and data transmission in the relay server in a modification of the second embodiment.

[0019] Figure 9 This is a sequence diagram illustrating the flow of data acquisition and transmission / reception in each information processing terminal and data transmission in the relay server in the fifth embodiment.

[0020] Figure 10 This is a sequence diagram illustrating the flow of data output, data acquisition, transmission and reception in each information processing terminal, and data transmission in the relay server in the sixth embodiment.

[0021] Figure 11 This is a diagram for explaining a schematic configuration of a management system including an information processing terminal and a server according to the seventh embodiment.

[0022] Figure 12 This example is in Figure 11 The flowchart shown is a flow chart of the process performed when the information processing terminal executes a predetermined application.

[0023] Figure 13A This is a diagram for explaining the first screen template.

[0024] Figure 13B This is a diagram for explaining the second screen template.

[0025] Figure 14 It is a diagram for explaining a schematic configuration of a management system including an information processing terminal and a server according to a first modification example of the seventh embodiment.

[0026] Figure 15 It is an explanatory diagram illustrating a screen template and each update area according to a first modification example of the seventh embodiment.

[0027] Figure 16It is a diagram for explaining a schematic configuration of a management system including an information processing terminal and a server according to a second modification example of the seventh embodiment.

[0028] Figure 17 The example is Figure 16 The flowchart shown is a flow chart of the process performed when the information processing terminal executes a predetermined application.

[0029] Figure 18 It is a diagram for explaining a schematic configuration of a management system including an information processing terminal and a server according to a third modification example of the seventh embodiment.

[0030] Figure 19 The example is Figure 18 The flowchart shown is a flow chart of the process performed when the information processing terminal executes a predetermined application.

[0031] Figure 20 It is a diagram for explaining a specific example in the third modified example of the seventh embodiment.

[0032] Figure 21A is an explanatory diagram illustrating a schematic configuration of a management system including an information processing terminal and a server according to a fourth modification of the seventh embodiment. Figure 21A The process for the case where network communication is possible is shown.

[0033] Figure 21B is an explanatory diagram illustrating a schematic configuration of a management system including an information processing terminal and a server according to a fourth modification of the seventh embodiment. Figure 21B The process for a case where network communication is not possible is shown.

[0034] Figure 22 The example is Figure 21A as well as Figure 21B The flowchart shown is a flow chart of the process performed when the information processing terminal executes a predetermined application.

[0035] Figure 23A is a diagram for explaining a specific example of the fourth modified example of the seventh embodiment, Figure 23A This example shows a case where synchronization is not performed.

[0036] Figure 23B is a diagram for explaining a specific example of the fourth modified example of the seventh embodiment, Figure 23B This section describes an example of synchronous processing. DETAILED DESCRIPTION

[0037] <First embodiment>

[0038] Hereinafter, with reference to the accompanying drawings, an information processing terminal and a data management system according to a first embodiment of the present disclosure will be described. Figure 1 As shown, the data management system 1 according to the present embodiment includes a plurality of information processing terminals 10 and a server 2 for managing data acquired by each of the plurality of information processing terminals 10 .

[0039] The server 2 according to this embodiment is, for example, a server device that functions as an MQTT message broker that transmits data based on the MQTT protocol. The server 2 communicates with information processing terminals 10 connected to a predetermined network N, such as a company's local area network (LAN), via an access point AP located within a predetermined management area. This allows the server 2 to send and receive messages between the multiple information processing terminals 10 and manage data received from the multiple information processing terminals 10.

[0040] like Figure 1 As shown, the server 2 mainly includes a storage unit 4 and a communication unit 5, and a control unit 3 that uniformly controls the storage unit 4 and the communication unit 5. The control unit 3 can be implemented by a microcomputer. The microcomputer can have a CPU (central processing unit), a system bus, an input / output interface, etc. The control unit 3 and the storage unit 4 function as an information processing device. The storage unit 4 can be a well-known semiconductor memory such as a non-volatile memory such as a ROM (read-only memory) and a volatile memory such as a RAM (random-access memory). In the storage unit 4, predetermined applications and databases for performing data transmission processing based on the MQTT protocol are pre-stored, and the predetermined applications and databases can be used by the control unit 3. The communication unit 5 is controlled by the control unit 3 to communicate with a plurality of information processing terminals 10 connected to a predetermined network N such as a company's LAN or the Internet.

[0041] The information processing terminal 10 according to this embodiment can be a portable information reader that can be carried by a user and used in various locations. The information processing terminal 10 has the function of reading and writing information stored in wireless tags T, such as RF (radio frequency) tags, using radio waves transmitted and received by an antenna as a medium. Furthermore, the information processing terminal 10 functions as an information code reader, optically reading information codes such as barcodes and QR codes. In other words, the information processing terminal 10 can read information in two ways.

[0042] like Figure 2AAs shown, the information processing terminal 10 mainly includes a control unit 21, a display unit 23, an operation unit 24, a notification unit 25, a communication unit 26, a short-range wireless communication unit 27, a power supply unit 28, a battery 29 and a memory 50. The control unit 21 is responsible for overall control. The memory 50 is a semiconductor memory, etc. The display unit 23 displays content according to the control of the control unit 21. The operation unit 24 outputs an operation signal corresponding to the input operation to the control unit 21. The notification unit 25 is implemented by a light-emitting unit, a speaker or a buzzer, etc. The light-emitting state of the light-emitting unit, the sound state of the speaker, the ringing state of the buzzer, etc. are controlled by the control unit 21. The communication unit 26 communicates with external devices such as the server 2. The communication unit 26 can be, for example, a Wi-Fi module. The short-range wireless communication unit 27 performs short-range wireless communication with other information processing terminals 10, etc. The power supply unit 28 supplies power from the battery 29 to various electrical components. According to the present embodiment, the control unit 21 can be, for example, a single processor that loads and executes software (i.e., a program) from the memory 50. As will be described later, the control unit 21 does not perform the processing of the application 51 (ie, application 51 ) and the processing of the operating system 52 (ie, OS 52 ) simultaneously, but switches and performs them as appropriate.

[0043] The information processing terminal 10 also includes a wireless tag processing unit 30 and an information code reading unit 40. The wireless tag processing unit 30 reads and writes information from the wireless tag T. The information code reading unit 40 optically reads the information code.

[0044] The wireless tag processing unit 30, as a wireless communication unit, uses a predetermined modulation method controlled by the control unit 21 to communicate with a plurality of wireless tags T by using electromagnetic waves in cooperation with the antenna 34 and the control unit 21. Thus, the wireless tag processing unit 30 reads data stored in the wireless tag T and writes data to the wireless tag T. The wireless tag processing unit 30 may be a circuit that transmits signals using a known communication method. Figure 2B As schematically shown in FIG, the wireless tag processing unit 30 includes a transmission circuit 31, a reception circuit 32, a matching circuit 33, and the like.

[0045] The information code reading unit 40 reads the information code optically. Figure 2C As shown, the code reader 40 includes a light-receiving sensor 43 including a CCD (charge coupled device) area sensor, an imaging lens 42, and an illumination unit 41 including multiple LEDs (light emitting diodes) and a lens. The code reader 40 works in conjunction with the control unit 21 to read a code C (e.g., a barcode or a QR code) attached to a read object R.

[0046] When the information code reading unit 40 performs reading, first, the illumination light Lf is emitted from the illumination unit 41 that receives the instruction through the control unit 21. The illumination light Lf is irradiated onto the reading object R through the reading port 12. Then, the reflected light Lr after the illumination light Lf is reflected by the information code C is introduced into the interior through the reading port 12. The reflected light Lr passes through the imaging lens 42 and is received by the light receiving sensor 43. The imaging lens 42 arranged between the reading port 12 and the light receiving sensor 43 forms an image of the information code C on the light receiving sensor 43. The light receiving sensor 43 outputs a light receiving signal corresponding to the image of the information code C. The light receiving signal output from the light receiving sensor 43 is stored in the memory 50 (refer to Figure 2A The image data is used in a decoding process for acquiring information included in the information code C. Furthermore, the information code reader 40 includes an amplifier circuit for amplifying the signal from the light receiving sensor 43 and an analog-to-digital (AD) converter circuit for converting the amplified signal into a digital signal, but these circuits are not shown in the figure.

[0047] The following describes the architecture of an application used in the information processing terminal 10 according to this embodiment. Assume that multiple information processing terminals 10 are used, for example, to perform inventory operations based on the results of reading (i.e., acquisition results) the tag IDs (tag identifiers) (i.e., keys) recorded in the UII area of ​​wireless tags T attached to each item displayed in a store. In this case, the server 2 manages a read list using the tag IDs received from each information processing terminal 10. The read list is updated sequentially. This allows the server 2 to understand the progress of the inventory operation (i.e., the overall data acquisition status using each information processing terminal 10). Furthermore, the information processing terminal 10 can query the server 2 to determine whether the read tag ID has already been read by another information processing terminal 10. For example, the information processing terminal 10 can query the server 2 during the reading process of the wireless tag T. Only if the query results in the information processing terminal 10 determining that it has read a tag ID that has not yet been read by another information processing terminal 10, the information processing terminal 10 sounds a predetermined buzzer. This allows the operator to distinguish between unread wireless tags T and read wireless tags T, and to perform inventory work efficiently.

[0048] On the other hand, the information processing terminal 10 may be unable to communicate with the server 2 due to moving to an area with poor communication conditions. Here, the read list is managed by the server 2. The information processing terminal 10 cannot query the server 2 and therefore cannot determine whether the unread wireless tags T have been read. As a result, the operator may be unable to continue the inventory operation. This problem is not limited to inventory operations. Similar problems can occur in any operation where the server 2 centrally manages data obtained by reading from wireless tags T or information codes C using each information processing terminal 10.

[0049] Therefore, the information processing terminal 10 according to this embodiment has a program for a predetermined application (i.e., application 51) installed. Application 51 is an application for performing inventory operations (i.e., data acquisition operations) using multiple information processing terminals 10 even when communication with the server 2 is impossible. The control unit 21 functions as a computing unit and executes the program for application 51.

[0050] In the application 51, data processing such as data acquisition and storage and communication processing with the server 2 are asynchronous as described later. By executing the application 51, processing for updating the read list 53 stored in the memory 50 based on the read tag ID, etc. is performed. Figure 3 As shown, the memory 50 stores an application 51 program, an operating system 52 (i.e., OS 52) program that manages the application 51, and a read list 53. The memory 50 also stores a message queue 54, a data update event capture unit 55 (i.e., a first processing unit) program, and a message communication unit 56 (i.e., a second processing unit) program.

[0051] The read list 53 is managed by the OS 52. The data structure of the read list 53 may be a mapping array (i.e., an array of key-value pairs). The read list 53 is a list used to determine whether a tag ID is unread. The read list 53 is received from the server 2 when the application 51 starts as a list of tag IDs that should be read for the inventory operation (i.e., a theoretical inventory list). In the data update of the read list 53, the read flag is set to ON for the tag ID read from the UII area of ​​the RF tag. For example, Figure 4A As shown in the example, at the start of the application 51, a theoretical inventory list with all read flags set to OFF for four tag IDs is received from the server 2. When tag ID 0002 is read, as shown in FIG. Figure 4B As shown, the read flag is set to ON for the tag ID 0002. In this way, the read list 53 is updated. The updated read list 53 can be regarded as an example of data obtained by executing the application 51.

[0052] The message queue 54 is managed by the OS 52. The message queue 54 is used to asynchronously process data, such as data acquisition and storage, and communicate with the server 2. For example, the message queue 54 may be a FIFO (First in, First out) message queue. The message queue 54 temporarily stores messages related to data update events captured by the data update event capture unit 55, as described below.

[0053] The data update event capture unit 55 is managed by the OS 52. The data update event capture unit 55 captures data access for data update as a data update event and saves a message related to the data update event in the message queue 54. The data access for data update is performed when the application 51 that has acquired the data updates the read list 53 by calling the API (Application Programming Interface). Figures 4A to 4B When updating data, such as Figure 4C As shown in the example, data update information such as the update date and time, update target data, operation, or update content is captured as a data update event by the data update event capture unit 55. An update message related to the captured data update event is temporarily stored in the message queue 54. In other words, the message related to the data update event contains the data update information.

[0054] The message communication unit 56 is managed by the OS 52. When communication with the server 2 is possible, the message communication unit 56 transmits a message related to a data update event stored in the message queue 54 or receives a message transmitted from the server 2. In this way, the message communication unit 56 synchronizes data with the server 2.

[0055] Next, refer to Figure 5 as well as Figure 6 The flowchart of FIG. 1 will describe in detail the execution schedule of the application 51 and the OS 52 when the information processing terminal 10 starts the above-mentioned application 51 to perform the inventory operation.

[0056] The application 51 is activated under the management of the OS 52 by the operator performing a predetermined operation on the operation unit 24 (S21). The application 51 performs screen display processing (S11). During the screen display processing, for example, instructions for reading the wireless tag T and operation guidance related to the operation can be displayed on the screen of the display unit 23 (F11). The application 51 enters a standby state (i.e., a pending state) awaiting input operations such as operation of operation buttons by the operator (S12).

[0057] In the standby state of the application 51, control is transferred to the OS 52, and OS processing is performed (S22) such as monitoring the operation of various devices included in the information processing terminal 10. Specifically, the OS 52 becomes capable of controlling the wireless tag processing unit 30 and the like (F22).

[0058] Then, the standby state is canceled by the operator operating the operation unit 24 to read the wireless tag T (Yes in S23 ). Control is transferred to the application 51 , and event processing for reading the wireless tag T by the wireless tag processing unit 30 is started ( S13 ).

[0059] When the tag ID is read from each wireless tag T within the readable area through the above-described event processing, the application 51 instructs the OS 52 to perform data processing (i.e., an API call) for updating the read list 53 for the read tag ID (S14). For example, if tag ID 0002 is read, the UII for tag ID 0002 is retrieved via the API through a mapping array operation. If the read flag for tag ID 0002 is unread, the OS 52 is instructed to set the read flag for tag ID 0002 to ON (F14). Control is then transferred to the OS 52.

[0060] The instructed OS 52 accesses the read list 53 and performs API processing for updating the read flag for the read tag ID to ON (S27). Specifically, as described above, when the flag operation for setting the read flag for tag ID 0002 to ON is instructed, the mapping array operation corresponding to the instruction is performed to update the read list 53 (F27).

[0061] The OS 52 captures the data access for the data update as a data update event through the data update event capture unit 55, and saves the message related to the data update event to the message queue 54 (S28). Specifically, when the read list 53 is updated as described above, the data access related to the data update event is saved in the message queue 54 (S28). Figure 4C The update message related to the exemplary data update event is saved in the message queue 54 (F28).

[0062] Control is transferred to the application 51, which performs processing corresponding to the result of the API, such as display processing and notification processing according to the read result (S15). As a result, the business progress rate is updated (F15). Then, the process returns to S11.

[0063] On the other hand, when the application 51 is in the standby state (No in S23), and the information processing terminal 10 becomes capable of wirelessly communicating with the server 2 via the communication unit 26 (Yes in S24), the OS 52 performs dequeuing and communication (i.e., publish) processing (S25). In this processing, the message related to the data update event stored in the message queue 54 as described above is sent to the server 2 via the communication unit 26 together with the transmission destination (for example, another terminal). For example, for tag ID 0002, in Figure 4C In the case where the update message is stored in the message queue 54, the update message is retrieved from the message queue 54 and sent (ie, published) to the server 2 together with the transmission destination of the update message (eg, another terminal) (F25).

[0064] Next, communication (i.e., subscribe) and queue processing are performed (S26). In this processing, the message communication unit 56 receives the message accumulated in the server 2 via the communication unit 26, and the information processing terminal 10 is the transmission destination. The read list 53 is updated according to the received message. For example, for Figure 4B The read list 53 receives a message related to the data update event for tag ID 0001 (including update date and time, update target data, operation, and update content). In this way, the read flag for tag ID 0001 is set to ON, thereby updating the read list 53.

[0065] The server 2 that receives the update message transmits the received update message to the information processing terminal 10 that is capable of communication among the other information processing terminals 10 that are set as the transmission destination of the update message. The update message of the information processing terminal 10 that is not capable of communication is transmitted when the information processing terminal 10 becomes capable of communication. That is, the server 2 performs temporary storage processing. For example, the server 2 receives the update message related to the tag ID0002 as described above (F31). The server 2 transmits the received update message to the information processing terminal 10 that is capable of communication. The server 2 temporarily stores the update message of the information processing terminal 10 that is not capable of communication. In addition, for example, the server 2 receives an update message related to the tag ID0001 such that the information processing terminal 10 that sent the above-mentioned update message is the transmission destination (F32). The server 2 transmits the update message to the information processing terminal 10 that is the transmission destination.

[0066] That is, when the information processing terminal 10 is in a state capable of communicating with the server 2 , the update message is sent to the server 2 via the communication unit 26 by the message communication unit 56 managed by the OS 52 instructed in advance by the application 51 , rather than the application 51 that performs the data acquisition process.

[0067] As described above, in the information processing terminal 10 according to this embodiment, the memory 50 stores the program of the application 51, the program of the OS 52, the read list 53, the message queue 54, the program of the data update event capture unit 55, and the program of the message communication unit 56. The data update event capture unit 55 and the message communication unit 56 are managed by the OS 52. The OS 52 manages the application 51. The data update event capture unit 55 captures data update events for data updates by the application 51 and stores messages related to the data update events in the message queue 54. When communication with the server 2 is possible, the message communication unit 56 synchronizes data with the server 2 by sending messages related to the data update events stored in the message queue 54.

[0068] In this way, the process of saving the message related to the captured data update event to the message queue 54, and the process of synchronizing the data with the server 2 by sending the message related to the data update event to the message queue 54 when communication with the server 2 is possible, are not managed by the application 51, but by the OS 52. As a result, the processing based on the application 51 and the communication processing with the server 2 are asynchronous. That is, these processes do not depend on each other. In other words, these processes are independent of each other. Therefore, regardless of the communication status with the server 2, the application 51 can perform the same logical processing. In addition, the communication processing with the server 2 does not need to be recorded in the program of the application 51. Therefore, even when the information processing terminal 10 cannot connect to the server 2, the operation of the application that cooperates with the server 2 can continue. Even if the available computer resources are small, it is possible to realize an information processing terminal 10 that can build an application that is not restricted by the communication status.

[0069] Furthermore, the data update event-related message captured by the data update event capture unit 55 and stored in the message queue 54 may include other information in addition to information such as the update date and time, update target data, operation, and update content. Furthermore, the data update event may include only a portion of the above information (e.g., only the update date and time and update content).

[0070] <Second embodiment>

[0071] Next, an information processing terminal and a data management system according to a second embodiment of the present disclosure will be described with reference to the accompanying drawings. The second embodiment differs primarily from the first embodiment in that the memory of each information processing terminal stores not only the data acquired by the terminal itself but also data acquired by other information processing terminals and received via a relay server. Components substantially identical to those in the first embodiment are denoted by the same reference numerals, and their descriptions are omitted.

[0072] In inventory operations using multiple information processing terminals, the reading areas of two or more information processing terminals may overlap. In this case, data read from wireless tags T within the overlapping reading areas is transmitted to the server separately from the two or more information processing terminals. Depending on the reading environment, this simultaneous transmission of the same data from each information processing terminal to the server can lead to concentrated access to the server, potentially increasing the server's load. Consequently, server access can become difficult for each information processing terminal, potentially reducing their operational efficiency.

[0073] Therefore, the information processing terminal 100 included in the data management system 1a according to this embodiment transmits data (i.e., tag IDs) read from wireless tags T during the reading process by the control unit 21, data that has not been read by other information processing terminals 100. The hardware structure of the information processing terminal 100 according to this embodiment is substantially the same as the hardware structure of the information processing terminal 10 according to the first embodiment. Unlike the first embodiment, the information processing terminal 100 does not need to utilize data update events. Furthermore, in this embodiment, the wireless tag processing unit 30 that acquires the tag ID (i.e., data) by reading the tag ID from the wireless tag T can be regarded as an example of an acquisition unit. The data acquired by the acquisition unit is stored in the memory 50.

[0074] In this embodiment, instead of the aforementioned server 2, a main server 2a for managing data acquired by the information processing terminal 100 and a relay server 2b capable of communicating with the main server 2a and the information processing terminal 100 are provided. The components of the main server 2a and the relay server 2b are substantially the same as those of the aforementioned server 2. Specifically, they include a control unit 3, a storage unit 4, and a communication unit 5.

[0075] The information processing terminal 100 processes the data transmitted from the relay server 2b as data acquired by the information processing terminal 100. This prevents the same data from being sent to the relay server 2b. That is, the control unit 21 of the information processing terminal 100 stores the data not stored in the memory 50 among the data received from the relay server 2b in the memory 50 (i.e., data management processing). The control unit 21 sends the data not stored in the memory 50 among the read data to the relay server 2b together with the transmission destination. The transmission destination of the data is other information processing terminals 100 and the main server 2a. In addition, the control unit 21 that performs the above-mentioned data management processing can be equivalent to an example of a data management unit.

[0076] The control unit 3 of the relay server 2b transmits the data received from the information processing terminal 100 via the communication unit 5 according to the transmission destination (i.e., data transmission processing). The transmission destination is specified by the information processing terminal 100. The control unit 3 and the communication unit 5 of the relay server 2b that perform the above-mentioned data transmission processing can be regarded as an example of a data transmission unit.

[0077] The main server 2a has installed an application (hereinafter referred to as the server application) that executes a master data management process for managing master data based on data acquired by the information processing terminal 100. The server application is executed by the control unit 3. The main server 2a, through the server application, inquires the relay server 2b via the communication unit 5 whether there is data addressed to the main server 2a. The main server 2a performs the master data management process described above based on the data addressed to the main server 2a and received from the relay server 2b.

[0078] Below, refer to Figure 7 The timing diagram of the data acquisition and transmission in the information processing terminal 100 and the data transmission process in the relay server 2b are described in detail. Figure 7 In the example of , data A, data B, and data C are read by information processing terminals 100a, 100b, and 100c, respectively.

[0079] like Figure 7 In the example shown, in the information processing terminals 100a, 100b, and 100c, the control unit 21 starts the reading process through the operator's prescribed operation on the operating unit 24. When the reading process starts, the job start notification is sent to the relay server 2b via the communication unit 26 (S101). The relay server 2b relays the job start notification to the main server 2a. The relay server 2b relays (i.e., transmits) the job number notification from the main server 2a to the information processing terminals 100a, 100b, and 100c (S102). In the case where data A, data B, and data C are read, the above-mentioned job number notification indicates that the number of data to be read is 3. The information processing terminals 100a, 100b, and 100c that receive the job number notification store the number of data to be read as 3. In addition, the above-mentioned job number notification is not limited to being received via the relay server 2b. The job number notification can also be received in advance using the transmission software of other servers.

[0080] Upon receiving the notification of the number of jobs, the information processing terminal 100a reads data A from the wireless tag T via the wireless tag processing unit 30. If data A is not stored in the memory 50, the control unit 21 notifies the user that unread data has been read by emitting light or sound from the notification unit 25. The control unit 21 then performs data management processing to store data A in the memory 50. Furthermore, data transmission processing (S103) is performed to transmit data A, along with the transmission destination, to the relay server 2b via the communication unit 26. The transmission destinations for data A are the other information processing terminals 100b and 100c and the main server 2a. The control unit 21 and communication unit 26 that perform the above-described data transmission processing can be considered an example of a data transmission unit.

[0081] The relay server 2b transmits the data A received from the information processing terminal 100a to the information processing terminals 100b and 100c and the main server 2a (S104). The main server 2a deletes the entry related to the data A received from the relay server 2b from the main data.

[0082] If data A received from the relay server 2b via the communication unit 26 is not stored in the memory 50, the control unit 21 of the information processing terminal 100b performs data management processing to store data A in the memory 50 (S105). Similarly, if data A received from the relay server 2b via the communication unit 26 is not stored in the memory 50, the control unit 21 of the information processing terminal 100c performs data management processing to store data A in the memory 50 (S106). Thus, even if data A is read by the information processing terminals 100b and 100c, since data A is already stored in the memory 50, it will not be transmitted from the information processing terminals 100b and 100c to the relay server 2b (S107 and S108). For example, the untransmitted data A can be discarded. Furthermore, if the read data is read by another information processing terminal 100 and stored in the memory 50, a predetermined notification indicating that the data has been read by the other information processing terminal 100 can be provided by the notification unit 25, such as by lighting or sounding an alarm. The control unit 21 and the communication unit 26 that perform processing for receiving data transmitted from the relay server 2 b may correspond to an example of a data receiving unit.

[0083] In addition, upon receiving the notification of the number of jobs, the information processing terminal 100b reads data B from the wireless tag T via the wireless tag processing unit 30. If data B is not stored in the memory 50, the control unit 21 notifies the user that the unread data has been read by, for example, emitting light or sound from the notification unit 25. The control unit 21 then performs data management processing to store data B in the memory 50. Furthermore, data transmission processing is performed to transmit data B, along with the transmission destination, to the relay server 2b via the communication unit 26 (S109). The transmission destinations of data B are the other information processing terminals 100a and 100c and the host server 2a.

[0084] The relay server 2b transmits the data B received from the information processing terminal 100b to the information processing terminals 100a and 100c and the main server 2a (S110). The main server 2a deletes the entry related to the data B received from the relay server 2b from the main data.

[0085] In the control unit 21 of the information processing terminal 100a, if the data B received from the relay server 2b is not stored in the memory 50, a data management process is performed to store the data B in the memory 50 (S111). Similarly, in the control unit 21 of the information processing terminal 100c, if the data B received from the relay server 2b is not stored in the memory 50, a data management process is performed to store the data B in the memory 50 (S112).

[0086] Furthermore, upon receiving the notification of the number of jobs, the information processing terminal 100c reads data C from the wireless tag T via the wireless tag processing unit 30. If data C is not stored in the memory 50, the control unit 21 notifies the user that unread data has been read by, for example, emitting light or sound from the notification unit 25. The control unit 21 then performs data management processing to store data C in the memory 50. Furthermore, data transmission processing is performed to transmit data C, along with the transmission destination, to the relay server 2b via the communication unit 26 (S113). The transmission destinations for data C are the other information processing terminals 100a and 100b and the host server 2a.

[0087] The relay server 2b transmits the data C received from the information processing terminal 100c to the information processing terminals 100a and 100b and the main server 2a (S114). The main server 2a deletes the entry related to the data C received from the relay server 2b from the main data.

[0088] In the control unit 21 of the information processing terminal 100a, if the data C received from the relay server 2b is not stored in the memory 50, a data management process is performed to store the data C in the memory 50 (S115). Similarly, in the control unit 21 of the information processing terminal 100b, if the data C received from the relay server 2b is not stored in the memory 50, a data management process is performed to store the data C in the memory 50 (S116).

[0089] In the information processing terminal 100c that has read the data C, the data A and the data B are already stored in the memory 50. Therefore, in the control unit 21, it is determined that all the data to be acquired are stored in the memory 50. That is, it is determined that the information processing terminal 100c is in the job completion state. In this case, in the information processing terminal 100c, through the above-mentioned data sending process, the job completion notification is sent to the relay server 2b via the communication unit 26 together with the transmission destination (S117). The transmission destination of the job completion notification is other information processing terminals 100a, 100b and the main server 2a. Then, the operator is notified that all the specified data has been read (that is, the information processing terminal 100c is in the job completion state) by displaying on the display unit 23 or by emitting light or sounding on the notification unit 25.

[0090] In the relay server 2b, the job completion notification received from the information processing terminal 100c is transmitted to the information processing terminals 100a, 100b and the main server 2a (S118).

[0091] Upon receiving the job completion notification, information processing terminals 100a and 100b recognize that information processing terminal 100c is in a job completion state, having read all designated data (S119, S120). This job completion status is notified to the operator via a display on display unit 23 or a light or sound notification on notification unit 25. Furthermore, when sending and transmitting the job completion notification, the information processing terminal 100 (in the example, information processing terminal 100c) that read the final data (in the example, data C) can specify only the host server 2a as the destination for the final data, without specifying any other information processing terminals 100.

[0092] As described above, in the information processing terminal 100 of the data management system 1a according to this embodiment, data read by the wireless tag processing unit 30 is stored in the memory 50. At least a portion of the read data is transmitted to the relay server 2b via the communication unit 26 along with a transmission destination. The data transmission destination includes another information processing terminal 100. Data is transmitted from the relay server 2b. The control unit 21 performs data management processing for storing data received by the communication unit 26 but not stored in the memory 50 in the memory 50. In the relay server 2b, data received from the information processing terminal 100 is transmitted to the transmission destination through data transmission processing performed by the control unit 3.

[0093] As a result, the memory 50 of each information processing terminal 100 not only stores the data it has acquired, but also receives and stores data acquired by other information processing terminals 100 via the relay server 2b. Consequently, each of the multiple information processing terminals 100 can easily grasp the overall data acquisition status using multiple information processing terminals 100. As a result, even when each information processing terminal 100 independently acquires data, duplication of data acquisition can be reduced. This improves operational efficiency.

[0094] In particular, data that is not stored in the memory 50 among the data read from the wireless tag T by the wireless tag processing unit 30 is transmitted to the relay server 2 b .

[0095] This makes it difficult for the relay server 2b to receive duplicate data, thereby suppressing an increase in the access load on the relay server 2b and suppressing a deterioration in work efficiency caused by the access load.

[0096] When it is determined that all the data scheduled to be acquired are stored in the memory 50 , the job completion notification is sent to the relay server 2 b together with the transmission destination. The transmission destination of the job completion notification includes other information processing terminals 100 .

[0097] Thus, even if one of the multiple information processing terminals 100 reaches the job completion state, the other information processing terminals 100 other than the one in the job completion state will also receive the job completion notification. Therefore, any information processing terminal 100 can quickly recognize that all the data that was scheduled to be acquired has been acquired (i.e., the data acquisition job has been completed).

[0098] In addition, the information processing terminal 100 may also receive information indicating the data to be read instead of the job number notification. Figure 8In the example shown, after sending a job start notification (S201), information processing terminals 100a, 100b, and 100c can receive master data representing the data to be read from relay server 2b (S202). This allows information processing terminals 100a, 100b, and 100c to recognize in advance that the read job has been completed by reading data A, data B, and data C. Furthermore, the master data is not limited to being received via relay server 2b. Master data can also be received in advance using transmission software from another server, for example.

[0099] In this case, upon reading data A, information processing terminal 100a updates the master data by deleting the entry related to data A from the master data stored in memory 50. Data A is then transmitted to relay server 2b (S203). Information processing terminals 100b and 100c receive data A from relay server 2b (S204) and update the master data by deleting the entry related to data A from the master data in memory 50 (S205 and S206). This update deletes the entry related to data A from the master data stored in memory 50. Therefore, even if data A is read by information processing terminals 100b and 100c, data A is not transmitted from information processing terminals 100b and 100c to relay server 2b (S207 and S208). For example, data A may be discarded instead of being transmitted.

[0100] Furthermore, the information processing terminal 100b, having read data B, updates the master data by deleting the entry related to data B from the master data stored in the memory 50. Data B is then transmitted to the relay server 2b (S209). The information processing terminals 100a and 100c receive data B from the relay server 2b (S210), delete the entry related to data B from the master data in the memory 50, and update the master data (S211 and S212).

[0101] Furthermore, the information processing terminal 100c, which has read the data C, updates the master data by deleting the entry related to the data C from the master data stored in the memory 50. The data C is then transmitted to the relay server 2b (S213). The information processing terminals 100a and 100b receive the data C from the relay server 2b (S214), delete the entry related to the data C from the master data in the memory 50, and update the master data (S215 and S216).

[0102] In addition, in the information processing terminal 100c that reads data C, when the items related to all data are deleted from the master data, a job completion notification indicating that the reading job is completed is sent to the relay server 2b via the communication unit 26 along with the transmission destination (S217). The transmission destination of the job completion notification is the other information processing terminals 100a, 100b and the main server 2a. In the relay server 2b, the job completion notification received from the information processing terminal 100c is transmitted to the information processing terminals 100a, 100b and the main server 2a (S218). In the information processing terminals 100a, 100b that receive the job completion notification, it is recognized that all the specified data has been read (S219, S220). In this way, even if the master data is used instead of the job number notification, the increase in the access load on the relay server 2b can be suppressed, just like the case of receiving the job number notification. In addition, the deterioration of the operating efficiency caused by the access load can be suppressed.

[0103] Furthermore, the relay server 2b and the main server 2a are not limited to being implemented as separate server devices as described above. These servers may also be implemented as different functions (e.g., applications) within a single server device. Furthermore, the main server 2a may periodically transmit the data acquisition status identified by the main server 2a to each information processing terminal 100 via the relay server 2b. Each information processing terminal 100 may display the received data acquisition status to the operator sequentially or at predetermined times through the display unit 23.

[0104] <Third embodiment>

[0105] Next, an information processing terminal and data management system according to a third embodiment of the present disclosure will be described with reference to the accompanying drawings. The third embodiment differs primarily from the first and second embodiments in that, utilizing the data update events described in the first embodiment, data update events acquired by an information processing terminal are received by other information processing terminals via a relay server and stored in memory. Components substantially identical to those in the first and second embodiments are denoted by the same reference numerals, and their descriptions are omitted.

[0106] In this embodiment, the memory of the information processing terminal not only records the data acquired by the information processing terminal but also receives and stores data acquired by other information processing terminals via the relay server. Furthermore, the processing of the data update event capture unit 55 and the processing of the message communication unit 56 are managed not by the application 51 but by the OS 52. During the processing of the data update event capture unit 55, messages related to the data update event captured by the data update event capture unit 55 are stored in the message queue 54. During the processing of the message communication unit 56, when communication with the relay server 2b is possible, the message queue 54 is sent via the message communication unit 56 and messages from other information processing terminals are received, thereby synchronizing data with the server 2.

[0107] Specifically, the information processing terminal 10 having the functions described in the first embodiment utilizes the relay server 2b in the data management system 1a described in the second embodiment. The relay server 2b, capable of communicating with each of the plurality of information processing terminals 10 and the server 2, includes a control unit 3 and a communication unit 5. The control unit 3 and the communication unit 5 function as a data transmission unit that transmits messages related to data update events received from the information processing terminal 10 to a destination specified by the information processing terminal 10.

[0108] Therefore, in this embodiment, as in the first embodiment described above, application 51 can perform the same logical processing regardless of the communication status with server 2 and relay server 2b. In addition, there is no need to describe the communication processing with server 2 in the program of application 51. Therefore, even when the information processing terminal 10 cannot connect to server 2 and relay server 2b, the operation of the application that cooperates with server 2 can continue. Even if there are few available computer resources, it is possible to implement an information processing terminal 10 that can build an application that is not restricted by the communication status. In addition, in this embodiment, as in the second embodiment described above, each of the multiple information processing terminals 10 can easily grasp the overall data acquisition status using the multiple information processing terminals 10. As a result, even when each information processing terminal 10 acquires data separately, duplication of data acquisition can be suppressed. That is, it is possible to achieve improved work efficiency.

[0109] Furthermore, when a data update event is captured, if a message related to the data update event for the same data is already stored in the message queue 54 , the data update event capturing unit 55 does not store the message related to the captured data update event in the message queue 54 .

[0110] <Fourth embodiment>

[0111] Next, an information processing terminal and data management system according to a fourth embodiment of the present disclosure will be described with reference to the accompanying drawings. This fourth embodiment differs primarily from the second and third embodiments described above in that the information processing terminal 100 issues a specified request to the relay server 2b to receive data from the relay server 2b. Components substantially identical to those in the second and third embodiments are denoted by the same reference numerals, and their descriptions are omitted.

[0112] In this embodiment, the information processing terminal 100 makes a predetermined request to the relay server 2b. In the data transmission process performed by the relay server 2b, if there is data to which the information processing terminal 100 that made the predetermined request is the transmission destination, the data is transmitted (i.e., sent) to the information processing terminal 100.

[0113] Thus, the information processing terminal 100 can use the above-mentioned predetermined request to adjust the time at which data acquired by other information processing terminals 100 is received. In other words, data can be received synchronously with the processing steps in the information processing terminal 100. This allows data to be automatically matched between multiple information processing terminals 100, thereby reducing operator time constraints and improving work efficiency.

[0114] In the relay server 2b, data received from each information processing terminal 100 is accumulated in the storage unit 4, which functions as a data accumulation unit, until a predetermined request is received. When data is accumulated in the storage unit 4, such that the information processing terminal 100 that has made the predetermined request is the transfer destination, the data is transferred to the information processing terminal 100 that has made the predetermined request through data transfer processing.

[0115] Specifically, in the relay server 2b, data A received from the information processing terminal 100a and destined for the information processing terminals 100b and 100c is accumulated in the storage unit 4. When the aforementioned predetermined request is received from the information processing terminal 100b in this accumulation state, the data A accumulated in the storage unit 4 and destined for the information processing terminal 100b is transferred to the information processing terminal 100b. Furthermore, when the aforementioned predetermined request is received from the information processing terminal 100c in this accumulation state, the data A accumulated in the storage unit 4 and destined for the information processing terminal 100c is transferred to the information processing terminal 100c.

[0116] As a result, the information processing terminal 100 can receive data addressed to it from the relay server 2b at a time when a specified request can be made. For example, if communication with the relay server 2b is unavailable, data addressed to it can be received at a time when a specified request can be made. Furthermore, if a process with a higher priority than the received process causes a delay in receiving data addressed to it, the data can be received at a desired time for internal processing by delaying the sending of the specified request in accordance with the delay.

[0117] <Fifth embodiment>

[0118] Next, an information processing terminal and data management system according to a fifth embodiment of the present disclosure will be described with reference to the accompanying drawings. This fifth embodiment differs primarily from the fourth embodiment described above in that, when the information processing terminal 100 is unable to communicate with the relay server 2b, it stores the read data as transmission standby data. Components substantially identical to those in the fourth embodiment are denoted by the same reference numerals, and their descriptions are omitted.

[0119] The information processing terminal is connected to the relay server as described above. However, if the information processing terminal is unable to connect to the relay server and is unable to communicate with the relay server, it may be difficult to continue reading. In particular, information processing terminals used in environments such as factories and warehouses where radio waves for wireless communication are not fully distributed may be unable to communicate with the relay server. Therefore, it may be difficult to continue reading.

[0120] In this embodiment, during data management processing performed by the control unit 21 of the information processing terminal 100, if communication with the relay server 2b is unsuccessful, data acquired through reading by the wireless tag processing unit 30 is stored in the memory 50 as transmission standby data. When communication with the relay server 2b becomes possible, a predetermined request is transmitted. Data is received from the relay server 2b in response to the predetermined request. Then, during data transmission processing performed by the control unit 21, data from the transmission standby data stored in the memory 50 that has not been received in response to the predetermined request is transmitted to the relay server 2b. Furthermore, the relay server 2b is installed with a management application that maintains data transmitted to the uncommunicable information processing terminal 100 until communication is restored.

[0121] Specifically, if Figure 9In the example shown, among the information processing terminals 100a, 100b, and 100c, only the information processing terminal 100a cannot communicate with the relay server 2b (S301). The data A, data B, and data C read by the information processing terminal 100a are stored in the memory 50 as transmission standby data (S302).

[0122] The data B read by the information processing terminal 100b is sent to the relay server 2b (S303). In the relay server 2b, the received data B is transmitted to the information processing terminal 100c and the main server 2a, and stored in the storage unit 4 (S304). The transmission destination of the stored data B is the information processing terminal 100a. In the information processing terminal 100c, the data B received from the relay server 2b is stored in the memory 50 (S305). Then, the data C read by the information processing terminal 100c is sent to the relay server 2b (S306). In the relay server 2b, the received data C is transmitted to the information processing terminal 100b and the main server 2a, and stored in the storage unit 4 (S307). The transmission destination of the stored data C is the information processing terminal 100a. In the information processing terminal 100b, the data C received from the relay server 2b is stored in the memory 50 (S308).

[0123] After that, information processing terminal 100a, which has become capable of communicating with relay server 2b, transmits the aforementioned predetermined request to relay server 2b before transmitting the transmission standby data. As a result, data B and data C stored in storage unit 4, for which the relay server 2b is the transmission destination, are received (S309). Then, data A, which has not been received in response to the predetermined request, from the transmission standby data (i.e., data A, data B, and data C) stored in memory 50, is transmitted to relay server 2b (S310). Data B and data C are not transmitted.

[0124] In the relay server 2b, the data A received from the information processing terminal 100a is transmitted to the information processing terminals 100b and 100c and the main server 2a (S311). In the information processing terminal 100b, the data A received from the relay server 2b is stored in the memory 50 (S312). In the information processing terminal 100c, the data A received from the relay server 2b is stored in the memory 50 (S313).

[0125] Furthermore, in the data management process described above by the information processing terminal 100a, data received in response to a predetermined request is stored as data acquired by reading in the memory 50 (S314). Then, data not received in response to the predetermined request among the transmission standby data is stored as data acquired by reading in the memory 50 (S315).

[0126] In this way, data not transmitted by relay server 2b in the transmission standby data acquired when communication with relay server 2b is lost is transmitted from information processing terminal 100 to relay server 2b when communication is restored. Furthermore, data transmitted from relay server 2b is removed from the transmission standby data before it is transmitted to relay server 2b. This prevents duplicate transmission of data read and transmitted by other information processing terminals 100.

[0127] <Sixth embodiment>

[0128] Next, an information processing terminal and data management system according to a sixth embodiment of the present disclosure will be described with reference to the accompanying drawings. This sixth embodiment differs primarily from the fifth embodiment described above in that an information processing terminal 100 that is unable to communicate with the relay server 2b directly delivers its transmission standby data as shared data to other information processing terminals 100. Components substantially identical to those in the fifth embodiment are denoted by the same reference numerals, and their descriptions are omitted.

[0129] An information processing terminal unable to communicate with a relay server due to a wireless communication malfunction or other reasons cannot utilize the send-standby data stored in memory. Furthermore, if the operator fails to notice the wireless communication malfunction, the information processing terminal may mistakenly believe that communication is temporarily unavailable due to reasons such as being out of communication range. In this case, if the operator continues to read data, data that could not be sent to the relay server will be read and stored in memory as send-standby data. This means that the read operation may become useless.

[0130] The information processing terminal 100 according to the present embodiment directly delivers the data to be transmitted stored in the memory 50 to the other information processing terminal 100 as shared data.

[0131] Specifically, the control unit 21 of the information processing terminal 100 that delivers the shared data performs an information code display process. In this process, an information code that records the data stored in the memory 50 as transmission standby data is generated and displayed on the screen of the display unit 23. On the other hand, the control unit 21 of the information processing terminal 100 that receives the shared data performs an information code reading process. In this process, the shared data is directly received by optically reading the above-mentioned information code by the information code reading unit 40. In addition, the control unit 21 and the display unit 23 that perform the above-mentioned information code display process can be equivalent to an example of a data output unit. The control unit 21 and the information code reading unit 40 that perform the above-mentioned information code reading process can be equivalent to an example of a data acquisition unit. In addition, display is equivalent to data output, and reading is equivalent to data acquisition.

[0132] For example, Figure 10 As shown, in the information processing terminal 100a that cannot communicate with the relay server 2b (S401), data A and data B are stored as transmission standby data (S402). Assume that the information processing terminal 100a directly delivers the data A and data B to the information processing terminal 100b. In addition, Figure 10 In FIG. 1 , for convenience, the illustration of the master data in the master server 2 a is omitted.

[0133] In this case, when the operation of delivering the predetermined data is performed in the information processing terminal 100a, an information code (for example, Figure 10 The data A and B are displayed on the screen 23a of the display unit 23 (S403). Meanwhile, the information processing terminal 100b performs a predetermined reception operation, with the reading port 12 facing the screen 23a of the information processing terminal 100a. The information code reading unit 40 then reads data A and data B from the information code. The read data A and data B are directly received as shared data.

[0134] As described above, in the control unit 21 of the information processing terminal 100b, which directly receives data A and data B as shared data, data A and data B are not stored in the memory 50. Therefore, data management processing is performed to store data A and data B in the memory 50 (S404). In other words, in the data management processing, data not stored in the memory 50 among the received shared data is stored in the memory 50. Then, through the data transmission processing performed by the control unit 21, data A and data B are transmitted to the relay server 2b via the communication unit 26 along with the transmission destination (S405). The transmission destinations of data A and data B are the other information processing terminals 100a and 100c and the main server 2a.

[0135] The relay server 2b transfers the data A and data B received from the information processing terminal 100b to the information processing terminal 100c and the main server 2a (S406). The data A and data B to which the information processing terminal 100a is the transfer destination are stored in the storage unit 4.

[0136] When the data A and the data B received from the relay server 2 b via the communication unit 26 are not stored in the memory 50 , the control unit 21 of the information processing terminal 100 c stores the data A and the data B in the memory 50 ( S407 ).

[0137] Information processing terminal 100c reads data C from wireless tag T via wireless tag processing unit 30. Since data C is not stored in memory 50, control unit 21 of information processing terminal 100c causes notification unit 25 to perform a predetermined notification. Control unit 21 then stores data C in memory 50. Data C, along with the destination, is transmitted to relay server 2b via communication unit 26 (S408). Data C is transmitted to other information processing terminals 100a and 100b, as well as host server 2a.

[0138] The data C received from the information processing terminal 100c is transferred to the information processing terminal 100b and the main server 2a via the relay server 2b (S409). The data C having the information processing terminal 100a as the transfer destination is stored in the storage unit 4.

[0139] In the control unit 21 of the information processing terminal 100b, when the data C received from the relay server 2b is not stored in the memory 50, the data C is stored in the memory 50 (S410).

[0140] Furthermore, after the information processing terminal 100c has read the data C as described above, it is determined that all the data scheduled for acquisition has been stored in the memory 50. A job completion notification is then transmitted to the relay server 2b via the communication unit 26, along with the transmission destination. The job completion notification is transmitted to the other information processing terminals 100a and 100b, as well as the main server 2a. The relay server 2b transmits the job completion notification received from the information processing terminal 100c to the information processing terminal 100b and the main server 2a. Upon receiving the job completion notification, the information processing terminal 100b recognizes that all the designated data has been read (i.e., the job is complete).

[0141] In this way, data acquired by the information processing terminal 100a, which is unable to communicate with the relay server 2b, can be transmitted as shared data to the relay server 2b via the information processing terminal 100b, which is able to communicate with the relay server 2b. Therefore, even if the communication function of the information processing terminal 100 fails during the data acquisition operation, the operation can be restored.

[0142] In particular, in this embodiment, in the information processing terminal 100 that cannot communicate, the information code (for example, Figure 10 On the other hand, in the information processing terminal 100 capable of communication, the shared data is received by optically reading the data recorded in the displayed information code.

[0143] This allows not only the relay server 2b but also information processing terminals 100 that are unable to communicate with other information processing terminals 100 to directly deliver shared data to other information processing terminals 100. In particular, since the information code reader 40, which can read data, can be used as a data receiving unit for shared data, the shared data can be smoothly transferred.

[0144] In addition, in the case where a plurality of data are stored in the memory 50 as transmission standby data, the information processing terminal 100 that delivers the data can sequentially display the respective information codes recording the respective data in the plurality of data at prescribed intervals. The information processing terminal 100 that receives the data can directly receive the plurality of data by sequentially reading the respective information codes. In addition, a plurality of data as transmission standby data (i.e., shared data) can also be recorded in one information code. Furthermore, a plurality of data as transmission standby data can also be divided into groups, and the data can be recorded in one information code for each group. For example, suppose eight data are divided into three groups of three data, three data, and two data. In this case, the information code recording the three data of the initial group, the information code recording the three data of the next group, and the information code recording the two data of the last group can also be displayed in sequence.

[0145] In addition, the means of handing over shared data is not limited to reading the above-mentioned information code. As the data output unit and data acquisition unit for handing over shared data, for example, wireless communication using the short-range wireless communication unit 27 or Wi-Fi, or wired communication using a cable, etc. can also be used.

[0146] <Seventh embodiment>

[0147] Next, an information processing terminal and a management system according to a seventh embodiment of the present disclosure will be described with reference to the drawings.

[0148] As a conventional method of controlling an information processing terminal using a thin client system, there is a screen transfer type, in which information depicting the entire screen to be displayed is sent from a server to the information processing terminal. With this screen transfer type, screen rewriting responses may be delayed depending on the network communication status. Alternatively, there is a network boot type, which can be used even offline. With this network boot type, processing time may be prolonged when applications performing complex processing are executed in the portable information processing terminal. This is because portable information processing terminals generally have limited computer resources.

[0149] In the management system 200 including the information processing terminal 210 and the server 201 according to this embodiment, Figure 11 In the example shown, a screen template P provided with an update area Ps is pre-stored in the memory 50 of the information processing terminal 210. The screen template P can be downloaded. As a result, the amount of depiction information used in the display of the screen 23a of the display unit 23 when a predetermined application is executed can be reduced. The depiction information is transmitted from the server 201 via the communication unit 26. As a result, the response of the screen update (i.e., screen rewriting) is improved. In addition, the hardware structure of the information processing terminal 210 is substantially the same as the hardware structure of the information processing terminal 10 or the information processing terminal 100 described above. In addition, the hardware structure of the server 201 is substantially the same as the hardware structure of the server 2 described above.

[0150] Specifically, if Figure 12 As shown in the flowchart, the control unit 21 executes a predetermined application. At this time, if the screen template P is not pre-stored (No in S501), a first request for a screen template is sent to the server 201 via the communication unit 26. In response to the first request, the screen template P is downloaded from the server 201 and stored in the memory 50 (S502). If the screen template P has been downloaded or is already stored in the memory 50 (Yes in S501), the screen template P is read from the memory 50 and displayed on the screen 23a of the display unit 23 (S503). If no screen update message is received from the server 201 via the communication unit 26 (No in S504), the update area Ps of the screen template P is blank. A second request for an update message is sent to the server 201 via the communication unit 26. If an update message is received from the server 201 in response to the second request (Yes in S504), information based on the update message is displayed in the update area Ps of the screen template P (S505).

[0151] exist Figure 11In the example of , when a predetermined application is executed, the screen template P of the screen 23a is updated based on TEST included in the update message received from the server 201 as a response to the second request. As a result, TEST is displayed in the update area Ps.

[0152] According to this embodiment, the information processing terminal 210 is equipped with a management system 200 having a server 201, and the information processing terminal 210 includes: a control unit 21, the control unit 21 is used to execute a specified application; a communication unit 26, the communication unit 26 is used to send messages to the server 201 and receive messages from the server 201; a display unit 23; and a memory 50, the memory 50 stores a screen template P displayed on the screen 23a of the display unit 23 when the specified application is executed, and the specified application updates the update area Ps of the screen template P read from the memory 50 when the specified application is executed based on the message received from the server 201 via the communication unit 26.

[0153] In this way, an update instruction for a portion of the screen to be displayed on information processing terminal 210 is transmitted from server 201 as an update message. This allows for faster screen updates than conventional screen transfer-type thin client systems. Furthermore, in information processing terminal 210, screen templates P are pre-stored in memory 50. This allows the application to generate only a portion of the screen, enabling faster screen display processing. In other words, only the update area Ps, which is a portion of the screen, is updated, rather than the entire screen, enabling faster screen display processing.

[0154] Furthermore, the screen template P is not limited to one, and a plurality of screen templates P that can be used in a predetermined application may be stored in the memory 50. In addition, the screen template P to be displayed may be switched according to the operation of the operation unit 24 or the like. For example, first, Figure 13A The first screen template P1 shown in the example is displayed. Then, when the ENTER key of the operation unit 24 is pressed, the display Figure 13B The second screen template P2 is shown. A drop-down menu is arranged in the update area Ps of the second screen template P2. The contents of the drop-down menu are received from the server 201 as a response to the second request. Alternatively, instead of pressing the ENTER key on the operation unit 24, the ENTER icon displayed on the screen of the touch-panel display unit 23 may be clicked.

[0155] Next, refer to Figure 12 as well as Figure 14The first variation of the seventh embodiment will now be described. In the first variation of the seventh embodiment, multiple update areas Ps are provided in one screen template P. Therefore, the update message received from the server 201 in response to the second request includes position information for identifying the positions of the multiple update areas Ps.

[0156] Specifically, if Figure 14 As shown, it is assumed that there are two screen templates P, namely, a first update area Ps1 and a second update area Ps2. The screen template P is downloaded and stored in the memory 50 (S502). When an update message is received from the server 201 in response to the second request for updating the first update area Ps1 (Yes in S504), information based on the update message is displayed in the first update area Ps1 of the screen template P (S505). Figure 14 In the example shown in FIG5 , the screen template P of screen 23a is updated based on α and position information indicating the position of the first update area Ps1 included in the update message received from server 201. As a result, α is displayed in the first update area Ps1. Similarly, when an update message is received from server 201 in response to a second request to update the second update area Ps2 (Yes in S504), information based on the update message is displayed in the second update area Ps2 of screen template P (S505).

[0157] Thus, multiple update areas Ps are provided in one screen template P. Furthermore, the update message from the server 201 includes position information for identifying the position of the update area Ps. Thus, multiple update areas Ps on the screen template P can be updated using the update message from the server 201.

[0158] The number of update areas Ps is not limited to two as described above for one screen template P, but may be three or more. Figure 15 As illustrated, the screen template P may also include a first update area Ps1 displaying a pull-down menu of PC (personal computer) names, a second update area Ps2 displaying a pull-down menu of users, and a third update area Ps3 displaying a pull-down menu of installation locations. In this case, the contents of the pull-down menu in the first update area Ps1 are received from the server 201 in response to a second request corresponding to an operation on the pull-down menu in the first update area Ps1. Furthermore, the contents of the pull-down menu in the second update area Ps2 are received from the server 201 in response to a second request corresponding to an operation on the pull-down menu in the second update area Ps2. The contents of the pull-down menu in the third update area Ps3 are received from the server 201 in response to a third request corresponding to an operation on the pull-down menu in the third update area Ps3.

[0159] Next, refer to Figure 16 as well as Figure 17 , a second modified example of the seventh embodiment will be described. Figure 16 As shown, in the second modification of the seventh embodiment, the screen update process is performed not by the application in the information processing terminal 210 but by the screen update server application in the server 201. Thus, an update message for the update area Ps is transmitted from the server 201 to the information processing terminal 210.

[0160] Specifically, in the information processing terminal 210, as shown in FIG. Figure 17 As shown in the flowchart, the screen template P read from the memory 50 is displayed on the screen 23a (S503). A request to start a server application for screen update is sent to the server 201 via the communication unit 26 (S506). In response to the start request, the server application for screen update is started on the server 201. The server application started on the server 201 performs the screen update process. As a result of the server application's processing, an update message is received from the server 201 (Yes in S504). Information based on the update message is displayed in the update area Ps of the screen template P (S505).

[0161] Thus, even if the screen update process is complex, the screen update (i.e., screen rewriting) can be performed at a higher speed than when the screen update process is performed in an application (i.e., terminal application) of the information processing terminal 100. This is because the server 201 has more computer resources than the information processing terminal 210.

[0162] Next, refer to Figure 18 as well as Figure 19 , the third modified example of the seventh embodiment is described. In the third modified example of the seventh embodiment, as Figure 18 As illustrated, the application for screen updating is switched based on whether the information processing terminal 210 is in a state capable of network communication (that is, whether the information processing terminal 210 is capable of communicating with the server 201 ).

[0163] Specifically, in the information processing terminal 210, as shown in FIG. Figure 19 As shown in the flowchart, the screen template P read from the memory 50 is displayed on the screen 23a (S503). A request to start the server application for screen update is sent to the server 201 via the communication unit 26 (S506). The terminal application for screen update is executed by the information processing terminal 210 (S507). Therefore, in a state where network communication is possible, the terminal application for screen update and the server application for screen update are executed in parallel.

[0164] If the information processing terminal 210 is in a state capable of network communication (Yes in S508), an update message is received from the server 201 in response to the second request (Yes in S504). Information based on the update message is displayed in the update area Ps of the screen template P (S505). On the other hand, if the information processing terminal 210 is not in a state capable of network communication (No in S508), the information displayed in the update area Ps of the screen template P is changed (i.e., updated) based on the execution result of the terminal application for screen update (S509).

[0165] For example, Figure 20 As shown in the example, assume that the screen update application is an application for displaying the time. If the information processing terminal 210 is in a state capable of network communication, it receives an update message related to the time information obtained by executing the server application (Yes in S504). Then, the time information is displayed in the update area Ps of the screen template P (S505). On the other hand, if the information processing terminal 210 is not in a state capable of network communication, the time information obtained by executing the terminal application is displayed in the update area Ps of the screen template P (S509).

[0166] Thus, when network communication is possible, screen updates can be performed at high speed using computer resources of server 201 , and when network communication is not possible, screen updates can be continued using the terminal application executed by information processing terminal 210 .

[0167] Next, referring to FIG. 21 and Figure 22 The fourth variation of the seventh embodiment will now be described. In the fourth variation of the seventh embodiment, when network communication is possible, the updated display content of the server application is synchronized with the terminal application. Alternatively, when network communication is not possible, the updated display content of the terminal application is synchronized with the server application after the terminal application transitions to a state where network communication is possible.

[0168] like Figure 21A As shown, when the display content is updated by the server application in a state where network communication is possible, a message for synchronizing the display content with the terminal application (hereinafter also referred to as a terminal synchronization message) is sent from the server 201 to the information processing terminal 210. Figure 21B As shown, when the terminal application updates the display content while network communication is unavailable, a message for synchronizing the display content with the server application (hereinafter also referred to as a server synchronization message) is stored in memory 50. Then, when communication is restored, the server synchronization message is sent from information processing terminal 210 to server 201.

[0169] Specifically, in the information processing terminal 210, as shown in FIG. Figure 22 As shown in the flowchart, the terminal application for screen update and the server application for screen update are executed in parallel (S506, S507). When the information processing terminal 210 is in a state where network communication is possible (Yes in S508), it is determined whether a server synchronization message is stored in the memory 50 (S510).

[0170] If the server synchronization message is not stored in the memory 50 (No in S510) and an update message is received from the server 201 (Yes in S504), information based on the update message is displayed in the update area Ps of the screen template P (S505). In the terminal application, using the terminal synchronization message received as the update message from the server 201, a process for synchronizing with the server application executed in parallel is performed (S511).

[0171] If the information processing terminal 210 is unable to communicate with the network (No in S508), the information displayed in the update area Ps of the screen template P is changed (i.e., updated) based on the execution results of the terminal application for screen updates (S509). A server synchronization message corresponding to the display update is then generated and stored in the memory 50 (S512). Screen updates using the terminal application are continued until the information processing terminal 210 is able to communicate with the network. Each time a screen is updated, a server synchronization message corresponding to the screen update is generated and stored in the memory 50.

[0172] When information processing terminal 210 recovers and is able to perform network communication (YES in S508), since a server synchronization message is stored in memory 50 (YES in S510), the stored server synchronization message is transmitted to server 201 via communication unit 26 (S513). Consequently, the server application on server 201 uses the server synchronization message received from information processing terminal 210 to perform processing for synchronization with the terminal application being executed in parallel.

[0173] For example, assume that an application displays the number of information codes read by the information processing terminal 210. Without performing the synchronization process as described above, Figure 23A As shown in the example, 60 information codes are first read while network communication is possible. Then, 40 more are read while network communication is not possible, and 100 is displayed as the number of read information codes. After communication is restored, an incorrect number of 60 is displayed as the number of read information codes. This is because the server application information that has not been updated is being displayed.

[0174] However, the above phenomenon can be avoided by performing synchronization processing as in this variant. As described above, assume that after 60 information codes are read out in a state where network communication is possible, 40 more information codes are read out in a state where network communication is not possible. In this variant, a server synchronization message indicating the number of additional information codes read out, 40, is sent from the information processing terminal 210 to the server 201. Thus, in the server application, the server synchronization message can be used to synchronize the number of information codes read out with the terminal application. As a result, as Figure 23B As illustrated, the correct number of 100 is displayed as the number of information codes read when communication is restored.

[0175] In this way, when network communication is possible, the updated display content of the server application is synchronized with the terminal application, and when network communication is not possible, the updated display content of the terminal application is synchronized with the server application. This allows the results of operations performed in a state where network communication is not possible to be accurately and effectively utilized.

[0176] In addition, the present disclosure is not limited to the above-described embodiments and the like, and may be modified as follows, for example.

[0177] (1) In the present disclosure, the data acquired by reading through the information processing terminals 10, 100, and 210 is not limited to the tag ID recorded in the wireless tag T. The acquired data may be information recorded in an information code, or information recorded in a variety of media such as the wireless tag T and the information code. Furthermore, the present disclosure is not limited to application to information processing terminals and servers used in inventory operations. The present disclosure may also be applied to information processing terminals and servers used in operations to acquire other data.

[0178] In addition, the technical features included in the above-mentioned embodiments can also be expressed as the following features. Of course, the present disclosure is not limited to the following features.

[0179] (Feature 1)

[0180] A data management system comprises a plurality of information processing terminals and a relay server for communicating with the plurality of information processing terminals, wherein each of the plurality of information processing terminals comprises: an acquisition unit for acquiring data; a storage unit for storing the data acquired by the acquisition unit; a data sending unit for sending the data acquired by the acquisition unit together with a transmission destination to the relay server; a data receiving unit for receiving data transmitted from the relay server; and a data management unit for storing data received by the data receiving unit that is not stored in the storage unit in the storage unit, the transmission destination including at least one of the plurality of information processing terminals other than each of the plurality of information processing terminals, and the relay server comprises a data transmission unit for transmitting the data received from each of the plurality of information processing terminals to the transmission destination.

[0181] (Feature 2)

[0182] According to the data management system of feature 1, for each of the plurality of information processing terminals, the data transmitting unit transmits data not stored in the storage unit, among the data acquired by the acquiring unit, to the relay server.

[0183] (Feature 3)

[0184] According to the data management system described in feature 2, each of the multiple information processing terminals sends a specified request to the relay server, and the data transmission unit, upon receiving the first data with each of the multiple information processing terminals that sent the specified request as the transmission destination, transmits the first data to each of the multiple information processing terminals that sent the specified request.

[0185] (Feature 4)

[0186] According to the data management system described in feature 3, the relay server has a data accumulation unit, which accumulates data received from each of the multiple information processing terminals, and the data transmission unit transmits the first data to each of the multiple information processing terminals that has sent the specified request when the first data is accumulated in the data accumulation unit.

[0187] (Feature 5)

[0188] According to the data management system described in feature 4, for each of the multiple information processing terminals, the data management unit stores the data acquired by the acquisition unit as sending standby data in the storage unit when each of the multiple information processing terminals is in a state where communication with the relay server is impossible, and the data sending unit, when data is received by the data receiving unit as a response to the specified request, sends the data in the sending standby data stored in the storage unit that has not been received as a response to the specified request to the relay server when each of the multiple information processing terminals is in a state where communication with the relay server is possible.

[0189] (Feature 6)

[0190] According to the data management system described in feature 1, for each information processing terminal among the multiple information processing terminals, the data sending unit sends a job completion notification together with a transmission destination to the relay server when the data management unit determines that all the data scheduled to be acquired are stored in the storage unit, and the transmission destination of the job completion notification includes at least one of the multiple information processing terminals other than each of the multiple information processing terminals.

[0191] (Feature 7)

[0192] According to the data management system described in feature 1, each of the multiple information processing terminals includes: a data output unit, which outputs the data stored in the storage unit as shared data for at least one of the multiple information processing terminals other than each of the multiple information processing terminals; and a data acquisition unit, which acquires the shared data output from the data output unit of at least one of the multiple information processing terminals other than each of the multiple information processing terminals. For each of the multiple information processing terminals, the data management unit stores, in the storage unit, the data of the shared data acquired by the data acquisition unit that is not stored in the storage unit.

[0193] (Feature 8)

[0194] According to the data management system described in feature 7, for each information processing terminal among the multiple information processing terminals, the data output unit displays an information code recording the shared data, or displays multiple information codes each recording a portion of the shared data, and the data acquisition unit acquires the shared data by optically reading the shared data from the one information code or the multiple information codes.

Claims

1. An information processing terminal comprising: Memory; a processor that loads and executes a program from the memory; and A transceiver, wherein the transceiver sends and receives messages to and from the server, wherein Stored in the memory are: the procedures for the application of the provisions; a program of the operating system that manages the specified application; data obtained through execution of the prescribed application; message queues; and procedures of the first processing unit and the second processing unit; The processor executes the program stored in the memory, thereby realizing the predetermined application, the operating system, the first processing unit, and the second processing unit. The first process captures a data update event generated by the execution of the predetermined application and saves a message related to the data update event in the message queue. When the information processing terminal is able to communicate with the server, the second processing unit synchronizes data with the server by sending a message related to the data update event stored in the message queue to the server. The predetermined application operates independently of the first processing unit and the second processing unit.

2. The information processing terminal according to claim 1, wherein The message related to the data update event includes data update information.

3. The information processing terminal according to claim 1, wherein When the data update event is captured, the first processing unit does not save the message related to the captured data update event in the message queue if a message related to the data update event regarding the same data has already been saved in the message queue.

4. A data management system comprising: The plurality of information processing terminals according to claim 3; and A relay server, which relays communications between the plurality of information processing terminals and the server, wherein The relay server receives a message related to the data update event from each of the plurality of information processing terminals together with a transmission destination specified by each of the plurality of information processing terminals, and transmits the message related to the data update event according to the transmission destination.

5. The data management system according to claim 4, wherein: Each of the plurality of information processing terminals sends a predetermined request to the relay server, The relay server accumulates messages related to the data update event received from each of the plurality of information processing terminals, When there are accumulated first messages related to the data update event with each of the multiple information processing terminals that have sent the specified request as the transmission destination, the first message related to the data update event is transmitted to each of the multiple information processing terminals that have sent the specified request.

6. The data management system according to claim 4, wherein: After confirming that each of the plurality of information processing terminals can communicate with the relay server, the information processing terminal sends the predetermined request to the relay server.

7. The data management system according to claim 4, wherein: The second processing unit included in each of the plurality of information processing terminals transmits a job completion notification together with a transmission destination to the relay server when determining that messages related to the data update event for all data scheduled to be acquired are stored in the message queue. The transmission destination of the job completion notification includes at least one of the plurality of information processing terminals other than each of the plurality of information processing terminals.

Citation Information

Patent Citations

  • Software execution system

    JP4707302B2