Server device, providing method, and program
The server device and method address the challenge of slow report file delivery by intermittently appending and suspending log updates during download requests, ensuring rapid and complete file provision.
Patent Information
- Application Number
- JP2024164465
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-09-20
- Publication Date
- 2025-12-11
- Estimated Expiration
- 2044-09-20
AI Technical Summary
Existing logistics management systems face challenges in quickly providing report files that take a significant amount of time to create, leading to communication timeouts and incomplete downloads when accessed by clients.
A server device and method that intermittently appends log information to a report file at predetermined intervals, suspends this process upon request, completes the file, and then resumes appending after delivery, ensuring rapid provision of the file.
Enables quick and complete delivery of report files by pre-creating most of the file content, allowing immediate access upon request, thus avoiding communication timeouts.
Smart Images

Figure 0007784502000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a server device, a providing method, and a program. [Background technology]
[0002] In recent years, sales systems that conduct electronic commerce via the Internet have become popular. For example, large-scale sales systems consisting of many shops (virtual stores) not only handle a wide range of categories of products, but also engage in price competition among the shops, and are used by many users. Many of these sales systems also provide a service (logistics agency service) that handles the logistics operations of shops. The logistics agency service, for example, uses a logistics management system linked to the sales system to handle the logistics operations of shops that have outsourced their logistics operations. For example, a logistics management system manages each product handled by a shop that has outsourced its logistics operations in a dedicated warehouse, and when a product from that shop is purchased by a user, it handles a series of logistics operations, such as picking the product from the warehouse, inspecting it, and shipping the packaged product to the user.
[0003] To find out the product management status, the person in charge at the shop that has outsourced the logistics operations will access the logistics management system and download a report file containing information (log information) about each product. This report file is created, for example, by processing information read from the database of the logistics management system into a CSV (Comma-Separated Values) format, etc. Depending on the number of products and sales status, the amount of information can become large, and creating the report file may take a long time. Therefore, if a report file is created after a request for downloading the report file is received from a shop, a communication timeout occurs, and the download may not be possible.
[0004] As a prior art technique for shortening download time, for example, Patent Document 1 discloses an invention of a server device (file distribution server) that shortens download time by downloading differential files. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2006-260212 Summary of the Invention [Problem to be solved by the invention]
[0006] However, the invention of Patent Document 1 mentioned above is based on the assumption that the client has already acquired the previous version of the file, and is not applicable when a shop that has outsourced logistics operations downloads a report file to learn about the product management status, etc.
[0007] Given this situation, there has been a demand for technology that allows report files, which take a certain amount of time to create, to be downloaded quickly.
[0008] The present invention has been made in view of the above circumstances, and has as its object to provide a server device, a providing method, and a program that can provide report files quickly. [Means for solving the problem]
[0009] A server device according to a first aspect of the present invention comprises: an intermittent appending unit that intermittently appends log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending unit that appends the log information to the report file after the intermittent appending unit has previously appended the log information when a download of the report file is requested from the client terminal used by the client; a providing unit that, when the supplementary writing unit starts writing, puts the intermittent writing unit on standby for writing, and, when the supplementary writing unit completes writing, provides the report file to the customer terminal; a restart unit that, when the providing unit completes providing the report file, initializes the report file and then causes the intermittent appending unit to cancel standby and resume appending; The present invention is characterized by comprising:
[0010] In addition, in the server device according to the above aspect, The intermittent appending unit may append the log information after the previous appending, or the log information after the supplementary appending unit supplements, to the report file.
[0011] In addition, in the server device according to the above aspect, The intermittent writing unit and the supplemental writing unit may add the log information processed into a predetermined format to the report file.
[0012] In addition, in the server device according to the above aspect, The restarting unit may release the standby state of the intermittent appending unit and resume appending after copying the report file to a history file and then initializing the report file, or after switching the report file to a newly created file with a different name.
[0013] The providing method according to the second aspect of the present invention comprises: A providing method executed by a server device, an intermittent appending step of intermittently appending log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending step of appending the log information since the last appending in the intermittent appending step to the report file when a download of the report file is requested from the client terminal used by the client; a providing step of putting the intermittent adding step on hold when the adding is started in the supplemental adding step, and providing the report file to the customer terminal when the adding is completed in the supplemental adding step; a restart step of initializing the report file after completing provision of the report file in the provision step, and then canceling the standby state of the intermittent appending step and restarting appending; The present invention is characterized by comprising:
[0014] A program according to a third aspect of the present invention comprises: On the computer, an intermittent appending step of intermittently appending log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending step of appending the log information since the last appending in the intermittent appending step to the report file when downloading of the report file is requested from the client terminal used by the client; a providing step of putting the intermittent addition step on hold when the addition is started in the supplemental addition step, and providing the report file to the customer terminal when the addition in the supplemental addition step is completed; a restart step of initializing the report file after completing provision of the report file in the provision step, and then canceling the standby state of the intermittent appending step to resume appending; The present invention is characterized in that the following is executed.
[0015] The above program may be distributed or sold via a computer communication network independently of the computer on which the program is executed. Furthermore, the information recording medium on which the above program is recorded is a non-transitory recording medium and can be distributed and sold independently of the computer. Here, a non-transitory recording medium refers to a tangible recording medium. Examples of non-transitory recording media include compact discs, flexible disks, hard disks, magneto-optical disks, digital video disks, magnetic tapes, and semiconductor memories. A transitory recording medium refers to the transmission medium (propagation signal) itself. Examples of transitory recording media include electrical signals, optical signals, and electromagnetic waves. A temporary storage area is an area for temporarily storing data and programs, such as volatile memory such as RAM (Random Access Memory). [Effects of the Invention]
[0016] According to the present invention, the report file can be provided quickly. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a block diagram showing an example of the overall configuration of a logistics management system according to an embodiment of the present invention; [Figure 2] 1 is a block diagram showing an example of a schematic configuration of a typical information processing device in which a server device or the like according to an embodiment of the present invention is realized; [Figure 3] FIG. 2 is a block diagram illustrating an example of a functional configuration of a server device according to the embodiment. [Figure 4] FIG. 2 is a schematic diagram illustrating an example of product management information stored in a database. [Figure 5] FIG. 4 is a schematic diagram illustrating an example of log information. [Figure 6] FIG. 10 is a schematic diagram for explaining the processing timing of the intermittent writing unit. [Figure 7] 10A and 10B are schematic diagrams for explaining the processing timing of the supplementary writing unit. [Figure 8]10 is a schematic diagram for explaining a case where a download period and a processing timing of an intermittent writing unit overlap. FIG. [Figure 9] 10 is a schematic diagram for explaining the timing of processing by the intermittent writing unit when the intermittent writing unit is resumed; FIG. [Figure 10] 10 is a flowchart illustrating a providing process according to the embodiment. [Figure 11] 10A and 10B are schematic diagrams illustrating the processing timing of an intermittent writing unit according to another embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0018] An embodiment of the present invention will be described below. In this embodiment, a report file containing recorded log information is downloaded to a store terminal from a logistics management system that handles logistics operations for a store (shop). However, this is just one example, and the present invention can also be applied appropriately to downloading various files that take a certain amount of time to create from other systems. In other words, the following embodiments are for illustrative purposes only and do not limit the scope of the present invention. Therefore, a person skilled in the art may adopt embodiments in which each or all of the elements are replaced with equivalents, and these embodiments are also included in the scope of the present invention.
[0019] (Overall composition) 1, a logistics management system 100 according to an embodiment of the present invention includes a server device 200, a sales server 300, and a store terminal 400. The server device 200, the sales server 300, and the store terminal 400 are communicably connected via the Internet 900, which is an example of a network. Although Figure 1 shows only a few store terminals 400, this is to make it easier to understand the invention, and in reality, a large number of store terminals 400 will be included depending on the number of stores that have entrusted their logistics operations to the logistics management system 100.
[0020] The server device 200 is, for example, a server computer, and performs the logistics business on behalf of a store that has outsourced the logistics business. As an example, the server device 200 manages products in the warehouse of a business providing a logistics agency service (products of a store that has outsourced logistics operations). The server device 200 is also capable of communicating with a warehouse terminal (not shown) used by a worker in the warehouse and a delivery person terminal (not shown) used by a delivery person. The server device 200 manages each product handled by a store (a store that has entrusted logistics operations) in a warehouse, and when a product from that store is purchased by a user through the sales server 300, the server device 200 performs a series of logistics operations on behalf of the store, such as issuing instructions to an operator via a warehouse terminal to pick the target product from the warehouse, inspect it, and ship the packaged product to the user. The server device 200 also intermittently adds log information about operations for handling managed products to a report file. When a request to download the report file is made by the store terminal 400, the server device 200 provides (causes the store terminal 400 to download) a report file supplemented with log information that has been updated since the most recent addition.
[0021] The sales server 300 is, for example, a server computer, and manages a sales site that sells products. For example, the sales server 300 also handles products from stores that have outsourced their distribution operations, and when a user purchases a product from the store, the sales server 300 transmits warehousing and shipping information for the product to the server device 200.
[0022] The store terminal 400 is, for example, a smartphone, a tablet, a PC (personal computer), or the like, and is used in a store that has outsourced logistics operations. As an example, the store terminal 400 accesses the server device 200, requests the download of a report file, and downloads the report file provided in response.
[0023] (General configuration of information processing device) A typical information processing device 500 in which the server device 200 according to this embodiment is realized will be described.
[0024] As shown in FIG. 2, the information processing device 500 includes a CPU (Central Processing Unit) 501, a ROM (Read Only Memory) 502, a RAM (Random Access Memory) 503, a NIC (Network Interface Card) 504, an image processing unit 505, an audio processing unit 506, an auxiliary memory unit 507, an interface 508, an operation unit 509, and a display unit 510.
[0025] The CPU 501 controls the overall operation of the information processing device 500, and is connected to each component to exchange control signals and data.
[0026] ROM 502 stores an IPL (Initial Program Loader) that is executed immediately after power is turned on. When this IPL is executed, a program stored in auxiliary memory unit 507 is read into RAM 503, and execution of the program by CPU 501 begins.
[0027] The RAM 503 is used to temporarily store data and programs, and holds programs and data read from the auxiliary storage unit 507, as well as other data necessary for communication.
[0028] The NIC 504 is used to connect the information processing device 500 to a computer communication network such as the Internet, and may be configured as a 10BASE-T / 100BASE-T standard modem used to configure a LAN (Local Area Network), an analog modem for connecting to the Internet using a telephone line, an ISDN (Integrated Services Digital Network) modem, an ADSL (Asymmetric Digital Subscriber Line) modem, or a cable modem for connecting to the Internet using a cable television line.
[0029] The image processing unit 505 processes image data read from the auxiliary storage unit 507 or the like using an image calculation processor (not shown) provided in the CPU 501 or the image processing unit 505, and then records this in a frame memory (not shown) provided in the image processing unit 505. The image information recorded in the frame memory is converted into a video signal at a predetermined synchronous timing and output to the display unit 510 via the interface 508 or the like. In other words, under the control of the CPU 501, the image processing unit 505 generates images required in the progress of processing performed by the information processing device 500, and displays the images on the display unit 510.
[0030] The audio processing unit 506 converts audio data read from the auxiliary storage unit 507 or the like into an audio signal and outputs it to, for example, an external speaker. That is, under the control of the CPU 501, the audio processing unit 506 generates audio to be generated during the progress of processing performed by the information processing device 500 and outputs the audio from the speaker.
[0031] The auxiliary storage unit 507 is a hard disk or the like, and stores various programs and various data necessary for controlling the overall operation of the information processing device 500. For example, the auxiliary storage unit 507 stores programs for realizing the server device 200 according to the present embodiment, etc. Then, under the control of the CPU 501, the auxiliary storage unit 507 reads out the stored programs and data as appropriate, and temporarily stores them in the RAM 503 or the like.
[0032] An operation unit 509 and a display unit 510 are connected to the interface 508. Note that the interface 508 may also transmit and receive necessary information to and from other connected external devices.
[0033] The operation unit 509 accepts operation inputs from a worker or the like who uses the information processing device 500 .
[0034] The display unit 510 renders an image according to the image data output by the image processing unit 505 and displays it to a worker or the like who uses the information processing device 500 .
[0035] Additionally, the information processing device 500 may be provided with a drive unit such as a DVD (Digital Versatile Disc)-ROM instead of the auxiliary storage unit 507. In this case, the information processing device 500 reads out programs and data from a DVD-ROM or the like attached to the drive unit and operates in the same manner as described above.
[0036] (Embodiment) The server device 200 according to the embodiment will be described below with reference to Fig. 3 to Fig. 9. The server device 200 is realized by the above-mentioned information processing device 500. For example, when the information processing device 500 is powered on, a program that causes the information processing device 500 to function as the server device 200 is executed, thereby realizing the server device 200 according to the present embodiment.
[0037] (Functional configuration of server device) 3 is a block diagram showing an example of a functional configuration of the server device 200 according to the embodiment. As shown in the figure, the server device 200 includes a database 210, a communication unit 220, an instruction unit 230, an update unit 240, an intermittent writing unit 250, a supplement writing unit 260, a providing unit 270, and a resuming unit 280.
[0038] The database 210 stores various information necessary for the operation of the logistics management system 100 in an updatable manner. For example, the database 210 stores product management information 211 for managing products entrusted to it by each store.
[0039] Specifically, the database 210 stores product management information 211 as shown in Fig. 4. This product management information 211 includes, for example, a store ID 211a, a product ID 211b, arrival date and time 211c, storage date and time 211d, picking date and time 211e, inspection date and time 211f, packing date and time 211g, shipping date and time 211h, and delivery completion date and time 211i. In other words, it is possible to manage the process from arrival (receiving the goods) to delivery completion for each product for each store ID of the store that has entrusted the logistics business. Each record in the product management information 211 (product ID 211b to delivery completion date and time 211i) is added with, for example, update management information (not shown), which makes it possible to know the creation date and time of the record and the last update date and time of the record.
[0040] In addition, database 210 also stores store information (store name, address, contact information, etc.) about each store that has entrusted logistics operations, product information (product name, size, weight, etc.) of the entrusted products, and web page information (login ID, password, data address, etc.) for providing report files to each store.
[0041] The above-mentioned auxiliary storage unit 507 or the like can function as such a database 210.
[0042] Returning to FIG. 3, the communication unit 220 transmits and receives various information to and from the sales server 300, the store terminal 400, and the warehouse terminal (including the delivery person terminal, etc.). For example, when a product arrives at a store that has outsourced its logistics operations and is completely stored in the warehouse, the communication unit 220 transmits inventory information for the target product to the sales server 300. Upon receiving this inventory information, the sales server 300 creates a new product page for the target store or adds the inventory quantity on an existing product page, making it possible to sell the target product. In addition, when a product from a store that has outsourced its logistics operations is purchased by a customer through the sales server 300, the sales server 300 receives the shipping and delivery information of the product. The communication unit 220 also receives a request to download a report file from the shop terminal 400. Then, the communication unit 220 cooperates with the providing unit 270, which will be described later, to provide the report file to the shop terminal 400 (to have it downloaded). In addition, the communication unit 220 sends instructions (picking instructions, inspection instructions, packing instructions, shipping instructions, etc. for products) to the warehouse terminal, and also receives work information (product arrival completion, warehousing completion, picking completion, inspection completion, packing completion, shipping completion, etc.) sent from the warehouse terminal.
[0043] The above-mentioned NIC 504 or the like can function as such a communication unit 220.
[0044] The instruction unit 230 instructs warehouse workers on various tasks for handling products via warehouse terminals. For example, when the communication unit 220 receives warehousing / shipping information of the target product sent from the sales server 300, the instruction unit 230 sends a picking instruction for the target product to the warehouse terminal. Then, when the communication unit 220 receives a picking completion notification sent from the warehouse terminal, the instruction unit 230 sends an inspection instruction for the target product to the warehouse terminal. Similarly, the instruction unit 230 transmits packing instructions, shipping instructions, etc. to the warehouse terminal.
[0045] The above-mentioned CPU 501 can function as such an instruction unit 230.
[0046] The update unit 240 updates the database 210 according to the results of various tasks involving handling of products. That is, the update unit 240 updates each record (product ID 211b to delivery completion date and time 211i) of the product management information 211 shown in FIG. 4 described above in accordance with the work information sent from the warehouse terminal. For example, when the communication unit 220 receives a notification of arrival completion sent from the warehouse terminal, the update unit 240 creates a new record for the target store ID 211a and updates the product ID 211b and arrival date / time 211c. Furthermore, when the communication unit 220 receives a warehousing completion notice sent from the warehouse terminal, the update unit 240 updates the warehousing date and time 211d of the target record. Similarly, the update unit 240 updates the picking date and time 211e, inspection date and time 211f, packing date and time 211g, and shipping date and time 211h of the target record according to the work information (picking completed, inspection completed, packing completed, shipping completed). Furthermore, when the communication unit 220 receives a delivery completion notice sent from the deliverer terminal, the update unit 240 updates the delivery completion date and time 211i of the target record.
[0047] The above-described CPU 501 can function as such an update unit 240.
[0048] The intermittent appending unit 250 intermittently appends log information about newly created records or updated records in the database 210 to a report file RF for the store that has outsourced the logistics work at a predetermined time interval. For example, each time the time for adding comes, the intermittent adding unit 250 searches for records that have been newly created or updated since the previous addition among the records in the product management information 211 (target store ID 211a), and adds the log information of the searched records to the report file RF. Note that the intermittent adding unit 250 searches for records for which date and time information such as arrival date and time, warehousing date and time, shipping date and time, inspection date and time, packaging date and time, shipping date and time, and delivery completion date and time is after the previous addition. In addition, the intermittent adding unit 250 searches for records for which the record was created after the previous addition. Specifically, the intermittent appending unit 250 appends log information LD as shown in Fig. 5 to the report file RF. Note that the log information LD in Fig. 5 shows a case where the log information LD has been processed into a CSV (Comma-Separated Values) format, but this is just one example, and log information LD that has been processed into a JSON (JavaScript (registered trademark) Object Notation) format, an XML (Extensible Markup Language) format, or the like may also be appended to the report file RF. That is, the log information LD is not limited to CSV, and may be data in any other format as long as it indicates the searched records.
[0049] The timing of writing by the intermittent writing unit 250 will be specifically described with reference to Fig. 6. Fig. 6 shows, as an example, a case where the timing of writing arrives every 15 minutes. As shown in Figure 6, first, at 11:00, the intermittent appending unit 250 appends log information of newly created records or updated records during period P1 (10:45 to 11:00, more precisely, 10:45.00 to 10:59.99, etc.) to the report file RF. Next, at 11:15 (11:15), the intermittent appending unit 250 appends the log information of the records that were newly created or updated during the period P2 (11:00 to 11:15) to the report file RF. Next, at 11:30 (11:30), the intermittent appending unit 250 appends the log information of the records that were newly created or updated during the period P3 (11:15 to 11:30) to the report file RF. In this way, the intermittent appending unit 250 appends to the report file RF the log information of the record that has been newly created or updated since the previous appending, every time the appending timing arrives.
[0050] The above-mentioned CPU 501 can function as such an intermittent writing unit 250.
[0051] Returning to FIG. 3, when the store terminal 400 requests downloading of the report file RF, the supplementary writing unit 260 writes the log information since the last time the intermittent writing unit 250 wrote it to the report file RF. For example, in response to a download request, the supplementary appending unit 260 searches for records in the product management information 211 (target store ID 211a) that have been newly created or updated since the last time the intermittent appending unit 250 appended them, and appends the log information of the found records to the report file RF. At that time, the supplementary appending unit 260 also appends to the report file RF the log information LD that has been processed into the CSV format as shown in Fig. 5. When the intermittent appending unit 250 appends to the report file RF the log information LD that has been processed into the JSON format or the like, the supplementary appending unit 260 also appends to the report file RF the log information LD that has been processed into the same JSON format or the like.
[0052] The timing of the supplementary writing unit 260 will be specifically described with reference to FIG. As shown in Figure 7, at 11:30 (11:30), the intermittent appending unit 250 appends the log information for period P3 (11:15 to 11:30) to the report file RF, and then at 11:37 (11:37) a download request is made from the store terminal 400, and the supplementary appending unit 260 appends the log information of newly created records or updated records during period P4 (11:30 to 11:37) to the report file RF.
[0053] The above-mentioned CPU 501 can function as such a supplementary writing unit 260.
[0054] Returning to Figure 3, when the supplementary writing unit 260 starts writing, the providing unit 270 puts the intermittent writing unit 250 on hold, and when the supplementary writing unit 260 completes writing, the providing unit 270 provides (has downloaded) the report file RF to the store terminal 400. For example, as shown in FIG. 8, since the addition C1 of the supplementary addition unit 260 and the download C2 by the store terminal 400 take a certain amount of time, it may happen that the time for the addition of the intermittent addition unit 250 arrives during the download C2 at 11:45. Therefore, the providing unit 270 puts the intermittent writing unit 250 into a standby state, so that the intermittent writing unit 250 does not perform writing even when the timing for writing arrives.
[0055] The above-described CPU 501 can function as such a providing unit 270.
[0056] Returning to Figure 3, when the providing unit 270 completes providing the report file RF to the store terminal 400, the restarting unit 280 initializes the report file RF (deletes the contents of the file), and then releases the standby state of the intermittent appending unit 250 to resume appending. For example, the restarting unit 280 releases the standby state of the intermittent appending unit 250 and causes the intermittent appending unit 250 to resume appending from the next appending timing. When releasing the standby state, the restarting unit 280 notifies the intermittent appending unit 250 of the time when the supplementary appending unit 260 appended the log information. 9(a), when download C2 is completed, the restarting unit 280 releases the standby of the intermittent appending unit 250. Then, at 12:00, which is the first append timing after the release, the intermittent appending unit 250 appends log information of newly created records or updated records during period P5 (11:37 to 12:00) to the report file RF. Thereafter, the intermittent appending unit 250 appends log information to the report file RF at each append timing at the next 15-minute interval. 9(a), the intermittent appending unit 250 appends log information for a long period P5 of 15 minutes or more to the report file RF at the first appending timing after the standby state is released, which may result in a heavier load than usual. Therefore, the appending timing of the intermittent appending unit 250 may be shifted as appropriate when the standby state is released. 9(b), when download C2 is completed, the restarting unit 280 releases the standby of the intermittent writing unit 250. At that time, the restarting unit 280 not only transmits the time (11:37) when the supplementary writing unit 260 added the log information, but also the next adding timing (11:52) to the intermittent writing unit 250. Then, at the instructed append timing of 11:52 (11:52), the intermittent appending unit 250 appends the log information of the records newly created or updated during period P6 (11:37 to 11:52) to the report file RF. After that, the intermittent appending unit 250 appends the log information to the report file RF at each append timing of the next 15-minute interval.
[0057] The above-mentioned CPU 501 can function as such a restart unit 280.
[0058] (Operation of the server device according to the embodiment) The operation of the server device 200 will be described below with reference to FIG. 10. FIG. 10 is a flowchart showing the flow of the provision process executed by the server device 200. This provision process is executed, for example, as a separate process for each store that has outsourced logistics operations. In other words, a separate report file is prepared for each store. When the provision process starts, each report file is assumed to be initialized.
[0059] First, the server device 200 determines whether or not the timing for additional writing has arrived (step S11). When the server device 200 determines that the time for adding has come (step S11; Yes), it adds the log information (step S12). That is, the intermittent appending unit 250 searches for records that have been newly created or updated since the last append among the records in the product management information 211 (target store ID 211a), and appends the log information of the found records to the report file RF. For example, as shown in FIG. 6, if it is now 11:00, the intermittent appending unit 250 appends the log information for period P1 (10:45 to 11:00) to the report file RF; if it is now 11:15 (11:15), it appends the log information for period P2 (11:00 to 11:15) to the report file RF; and if it is now 11:30 (11:30), it appends the log information for period P3 (11:15 to 11:30) to the report file RF.
[0060] After adding the log information to the report file RF in this way, the server device 200 returns the process to step S11 described above.
[0061] On the other hand, if it is determined that the timing for additional writing has not arrived (step S11; No), the server device 200 determines whether or not a download request has been made (step S13). That is, the server device 200 determines whether or not a download request for the report file RF has been made from the target store terminal 400.
[0062] If the server device 200 determines that there is no download request (step S13; No), the process returns to step S11 described above.
[0063] On the other hand, if it is determined that a download request has been made (step S13; Yes), the server device 200 puts the intermittent additional writing on hold (step S14). That is, the providing unit 270 puts the intermittent writing unit 250 on hold before writing.
[0064] The server device 200 supplements the log information (step S15). That is, the supplementary appending unit 260 searches for records that have been newly created or updated since the last time the intermittent appending unit 250 appended each record in the product management information 211 (target store ID 211a), and appends the log information of the found records to the report file RF. For example, as shown in FIG. 7, if the intermittent appending unit 250 appends the log information for period P3 (11:15 to 11:30) to the report file RF at 11:30 (11:30), and then a download request is made from the store terminal 400 at 11:37 (11:37), the supplementary appending unit 260 appends the log information of newly created records or updated records during period P4 (11:30 to 11:37) to the report file RF.
[0065] The server device 200 provides the report file (step S16). That is, the providing unit 270 provides (has downloaded) the report file RF to which the log information has been added in step S15 above to the requesting shop terminal 400.
[0066] The server device 200 determines whether the download is complete (step S17), and waits for subsequent processing while the download is not complete (step S17; No). Then, when it is determined that the download is complete (step S17; Yes), the server device 200 initializes the report file (step S18). That is, the restarting section 280 erases all of the log information recorded in the report file RF.
[0067] The server device 200 resumes the intermittent appending (step S19), and then the server device 200 returns the process to step S11 described above. That is, the server device 200 returns the process to step S11 described above, and resumes the intermittent additional writing. 9(a), when download C2 is completed, the restarting unit 280 releases the standby state of the intermittent writing unit 250. At that time, the restarting unit 280 notifies the intermittent writing unit 250 of the time (11:37) when the supplementary writing unit 260 added the log information. Then, when the first recording timing after the cancellation is 12 o'clock (12:00) (step S11; Yes), the intermittent recording unit 250 appends the log information of the newly created records or updated records during period P5 (11:37 to 12:00) to the report file RF (step S12). 9(b), when download C2 is completed, the restarting unit 280 releases the standby state of the intermittent writing unit 250. At that time, the restarting unit 280 may transmit to the intermittent writing unit 250 not only the time (11:37) when the supplementary writing unit 260 added the log information, but also the next adding timing (11:52). In this case, when the instructed append timing is 11:52 (11:52) (step S11; Yes), the intermittent append unit 250 will append the log information of the newly created records or updated records during period P6 (11:37 to 11:52) to the report file RF (step S12).
[0068] By performing this provision process, most of the report files are created in advance, so that the report files can be provided immediately after a download request is made. As a result, the report file can be provided quickly.
[0069] (Other embodiments) In the above embodiment, as shown in Figure 6, the case where the intermittent appending unit 250 intermittently appends log information to the report file RF at 15-minute intervals has been described, but this is just one example, and the intermittent appending unit 250 may also append log information to the report file RF at other time intervals. Furthermore, the intermittent appending unit 250 may append log information at different time intervals for each store depending on the quantity of merchandise handled by the store that has outsourced the logistics business, the frequency of merchandise sales, and so on. For example, if the quantity of goods handled by a store that has outsourced logistics operations is less than a certain number, or if the sales frequency of the goods is less than a certain value, the intermittent appending unit 250 appends log information to the report file RF at 30-minute intervals, as shown in Figure 11(a).
[0070] Furthermore, the time interval may be changed depending on the time period. For example, in the case of a store with few sales during the time period from late at night to dawn (for example, from 3:30 AM to 4:30 AM), the intermittent appending unit 250 appends log information to the report file RF at 30-minute intervals only during that time period (03:30 to 04:30 AM), as shown in FIG. 11(b). Then, before and after that time period, the intermittent appending unit 250 appends log information to the report file RF at 15-minute intervals.
[0071] In the above embodiment, the restarting unit 280 has been described as simply initializing the report file RF, but the report file RF may be copied to a history file and then initialized. Furthermore, the restarting unit 280 may switch the report file RF to a newly created file with a different name (that is, switch the report file RF to which the information is to be added). For example, the restarting unit 280 switches the report file RF to a file with a different name that includes in the file name the date and time when the supplementary writing unit 260 performed the addition. In other words, it may be possible to know from the file name that log information has been added after that date and time.
[0072] As described above, according to the present invention, it is possible to provide a server device, a providing method, and a program that can provide a report file quickly. [Explanation of symbols]
[0073] 100 Logistics Management System 200 Server device 210 databases 211 Product management information 220 Communications Department 230 Instruction section 240 Update Department 250 Intermittent recording section 260 Supplementary Addendum 270 Provision Department 280 Resumption Department 300 Sales Server 400 store terminals 500 Information processing equipment 501 CPU 502 ROM 503 RAM 504 NIC 505 Image Processing Unit 506 Audio Processing Unit 507 Auxiliary storage 508 Interface 509 Operation Unit 510 Display Unit 900 Internet
Claims
1. an intermittent appending unit that intermittently appends log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending unit that appends the log information to the report file after the timing at which the intermittent appending unit last appended the log information when a download of the report file is requested from the client terminal used by the client; a providing unit that, when the supplementary writing unit starts writing, puts the intermittent writing unit on standby for writing, and, when the supplementary writing unit completes writing, provides the report file to the customer terminal; a restart unit that, when the providing unit completes providing the report file, initializes the report file and then causes the intermittent appending unit to cancel standby and resume appending; A server device comprising:
2. the intermittent appending unit appends to the report file the log information after the timing of the previous appending or the log information after the timing of supplementation by the supplemental appending unit.
2. The server device according to claim 1.
3. the intermittent appending unit and the supplemental appending unit append the log information processed into a predetermined format to the report file; 3. The server device according to claim 1 or 2.
4. the restarting unit cancels standby of the intermittent appending unit and resumes appending after initializing the report file after copying the report file to a history file, or after switching the report file to a newly created file with a different name, 3. The server device according to claim 1 or 2.
5. A providing method executed by a server device, an intermittent appending step of intermittently appending log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending step of appending the log information to the report file after the timing of the previous appending in the intermittent appending step when a download of the report file is requested from the client terminal used by the client; a providing step of putting the intermittent adding step on hold when the adding is started in the supplemental adding step, and providing the report file to the customer terminal when the adding is completed in the supplemental adding step; a restart step of initializing the report file after completing provision of the report file in the provision step, and then canceling the standby state of the intermittent appending step and restarting appending; A providing method comprising:
6. On the computer, an intermittent appending step of intermittently appending log information about newly created records or updated records in the database to a report file for a client at predetermined time intervals; a supplementary appending step of appending the log information to the report file after the timing of the previous appending in the intermittent appending step when downloading of the report file is requested from the client terminal used by the client; a providing step of putting the intermittent addition step on hold when the addition is started in the supplemental addition step, and providing the report file to the customer terminal when the addition in the supplemental addition step is completed; a restart step of initializing the report file after completing provision of the report file in the provision step, and then canceling the standby state of the intermittent appending step to resume appending; A program characterized by executing the following.
Citation Information
Patent Citations
File edition management system, file registration server, file edition management method, and program
JP2006260212A
Data management device and data management method and program
JP2012234462A