Information processing systems, information processing methods, and programs
The information processing system simplifies data division in large, layout-retaining files by using user interfaces to specify areas and set conditions, automating the division process and reducing user burden.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- 株式会社SUTECH
- Filing Date
- 2024-11-29
- Publication Date
- 2026-06-10
AI Technical Summary
The burden on users increases significantly when dividing large numbers of pages of data in a file format that retains the layout during printing, especially when multiple divisions are required.
An information processing system with a first user interface for specifying arbitrary areas on a unit page and a second user interface for setting division conditions, allowing automatic data division based on these settings.
Reduces user burden by automating the data division process, even with large numbers of pages and divisions, by enabling easy specification of areas and setting conditions.
Smart Images

Figure 2026094862000001_ABST
Abstract
Description
Technical Field
[0004] , ,
[0005] , ,
[0001] The present invention relates to an information processing system capable of processing data in a file format that retains the layout during printing, an information processing method by the information processing system, and a program executed by a computer of the information processing system.
Background Art
[0002] Conventionally, data in a file format that retains the layout during printing has been widely used. A representative example of such data is a PDF file. Hereinafter, data in a file format that retains the layout during printing will be referred to as "specific format data". Regarding specific format data, Patent Document 1 describes an information processing apparatus that enables a menu to be displayed according to the content of each page of a PDF file.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Regarding specific format data, there are cases where it is required to divide the data. Conventionally, the division of specific format data has been performed by the user using a dedicated tool and specifying all the division positions. In such a conventional method, there is a problem that the greater the total number of pages of the specific format data and the greater the number of divisions, the greater the burden on the user.
[0005] The present invention has been made to solve such problems, and an object thereof is to reduce the burden on the user when dividing data even when the total number of pages of data in a file format that retains the layout during printing is large and the number of divisions is large. <
[0006] To solve the above-mentioned problems, the present invention has the following configuration: an information processing system characterized by comprising: a function to provide a first user interface that allows the user to specify an arbitrary area from a preview image of a unit page that constitutes target data in a file format that maintains the layout when printed; a function to provide a second user interface that allows setting division conditions using information belonging to a specified area which is the area specified by the first user interface on the unit page; and a function to divide the target data according to the division conditions set by the second user interface. [Effects of the Invention]
[0007] According to the present invention configured as described above, when dividing data in a specific format, the user only needs to specify the area using the first user interface and set the division conditions using the second user interface. Once these steps are completed, the data will be automatically divided according to the division conditions. Therefore, according to the present invention, even when the total number of pages of data in a file format that maintains the layout for printing is large and the number of divisions is large, the burden on the user when dividing the data can be reduced. [Brief explanation of the drawing]
[0008] [Figure 1] This figure shows an example configuration of a control system according to one embodiment. [Figure 2] This block diagram shows an example of the functional configuration of an information processing server and a user terminal according to one embodiment. [Figure 3] This diagram shows the contents of the featured PDF file. [Figure 4] This diagram shows the content of the first page of the featured PDF file. [Figure 5] This figure shows an example of a main screen for split-screen use. [Figure 6] This figure shows an example of a main screen for split-screen use. [Figure 7] This figure shows an example of a main screen for split-screen use. [Figure 8] This figure shows an example of the extracted information list screen. [Figure 9] This figure shows an example of a screen for setting value processing rules. [Figure 10] This figure shows an example of a value processing rule. [Figure 11] This figure shows an example of the extracted information list screen. [Figure 12] This figure shows an example of a screen for setting deemed conditions. [Figure 13] This figure shows an example of a screen for setting split conditions. [Figure 14] This figure shows an example of individual partitioning conditions. [Figure 15] This figure shows an example of a processing result screen. [Figure 16] This diagram shows the contents of the basic file. [Figure 17] This is a diagram showing an example of the configuration of an information processing system. [Modes for carrying out the invention]
[0009] Hereinafter, one embodiment of the present invention will be described with reference to the drawings. Figure 1 is a diagram showing an example of the configuration of a control system 1 (information processing system) according to this embodiment. As shown in Figure 1, the control system 1 is composed of an information processing server 2 (information processing system, server, computer) and a user terminal 3 (information processing system, terminal, computer). Both the information processing server 2 and the user terminal 3 can be connected to a network N including the Internet, a telephone network, and other communication networks.
[0010] The information processing server 2 is a server device connected to the network N. The information processing server 2 has a function of providing a service (cloud service) for splitting PDF files to users. As is well known, a PDF file is data in a file format that retains the layout at the time of printing. Hereinafter, the service provided by the information processing server 2 is referred to as the "present service". The user has registered for the present service and can log in to the account of the present service using his / her login information (for example, a combination of a login ID and a password). In FIGS. 1 and 2, the information processing server 2 is represented by one block. However, this does not mean that the information processing server 2 is composed of a single device. Of course, the information processing server 2 may include virtual servers. Also, the information processing server 2 may be composed of a plurality of devices. In this case, the devices constituting the information processing server 2 may include a web server, a web application server, or a database server. Also, in this case, the information processing server 2 may be composed of a plurality of server devices that are load-balanced by a load balancer. When the information processing server 2 is composed of a plurality of devices, each of the information processing parts of the plurality of devices, or a plurality of combinations thereof, functions as an "information processing part".
[0011] The user terminal 3 is a terminal used by the user. In the present embodiment, the user refers to an organization or an individual who can use the present service. As described above, the user may be an organization, but hereinafter, for convenience of explanation, an individual belonging to an organization is also simply referred to as a "user". The type of the user terminal 3 may be anything. For example, a desktop computer, a notebook computer, or a tablet computer (including a so-called smartphone) can function as the user terminal 3.
[0012] FIG. 2 is a block diagram showing a functional configuration example of the information processing server 2 and the user terminal 3. As shown in FIG. 2, the information processing server 2 includes, as a functional configuration, a server information processing unit 10 (information processing unit), a server communication unit 11, and a server storage unit 12. The user terminal 3 includes, as a functional configuration, a terminal information processing unit 13 (information processing unit), a terminal communication unit 14, a terminal display unit 15 (display unit), a terminal input unit 16, and a terminal storage unit 17.
[0013] The server information processing unit 10 includes a processing device including a processor and a primary storage device. The server information processing unit 10 executes processing by reading a program stored in the storage area (or other storage areas) of the server storage unit 12 into the primary storage device and executing it by the processing device. That is, the server information processing unit 10 executes processing through the cooperation of hardware and software. The server communication unit 11 includes a communication device including a communication control device and a network interface. The server communication unit 11 communicates with an external device by the communication device under the control of the server information processing unit 10. Hereinafter, it is assumed that the communication by the information processing server 2 is appropriately executed by the server communication unit 11, and the description of the communication is omitted. The server storage unit 12 stores data in a non-volatile memory. The non-volatile memory is, for example, a hard disk drive (or other magnetic storage devices), a ROM, or a flash memory.
[0014] The terminal information processing unit 13 comprises a processing unit including a processor and a primary storage device. The terminal information processing unit 13 performs processing by having the processing unit read a program stored in the storage area of the terminal storage unit 17 (or other storage area) into the primary storage device and execute it. In other words, the terminal information processing unit 13 performs processing through the cooperation of hardware and software. The terminal communication unit 14 comprises a communication device including a communication control device and a network interface. The terminal communication unit 14 communicates with external devices via the communication device under the control of the terminal information processing unit 13. Hereinafter, communication by the user terminal 3 will be appropriately performed by the terminal communication unit 14, and explanations regarding communication will be omitted. The terminal display unit 15 comprises a liquid crystal panel, an organic EL panel, or other display device. The terminal display unit 15 displays an image on the display device under the control of the terminal information processing unit 13. The terminal input unit 16 detects input to an input device and outputs the detection result to the terminal information processing unit 13. Input devices include, for example, a keyboard, mouse, touch panel, and camera. The terminal storage unit 17 stores data in non-volatile memory.
[0015] Next, the operation of control system 1 will be described. In the following description, the user interface may be referred to as "UI". In the following description, one of the users will be referred to as the "user of interest," and the operation of control system 1 will be explained using the case in which the user of interest uses the service as an example. The user of interest is assumed to be an entity that conducts some kind of economic activity and issues invoices to multiple business partners in the course of that economic activity. When using the service of interest, the PDF file to be split is assumed to be stored in the terminal storage unit 17 of user terminal 3. Hereinafter, the PDF file prepared by the user of interest in this example will be referred to as the "PDF file of interest 20" (target data).
[0016] Figure 3 shows images of each page that make up the PDF file of interest 20. Figure 4 shows an image of the first page of the PDF file of interest 20. As shown in Figure 3, the PDF file of interest 20 is a PDF file with a total of 5 pages, from page 1 to page 5. The PDF file of interest 20 consists of the first invoice data SD1 related to the first invoice, the second invoice data SD2 related to the second invoice, and the third invoice data SD3 related to the third invoice. Hereinafter, the first invoice data SD1, the second invoice data SD2, and the third invoice data SD3 will be collectively referred to as invoice data SD. The first to third invoices are invoices provided to different business partners. As shown in Figure 3, the first and second invoice data SD1 and SD2 are data for 2 pages, and the third invoice data SD3 is data for 1 page. Hereinafter, the first page, the second page, etc. in the entire PDF file of interest 20 will be referred to as the first page of the whole, the second page of the whole, etc. Furthermore, the first page, second page, etc., of a single invoice data SD will be referred to as "Document Page 1," "Document Page 2," etc., respectively. Also, the data for one page of the featured PDF file 20 will be referred to as a unit page 21.
[0017] As shown in Figures 3 and 4, each invoice data SD is broadly divided into a standardized section 22, which records standardized / bibliographic information, and a detailed section 23, which records detailed information and information associated with the detailed information. The standardized section 22 records fixed information (hereinafter referred to as "form fixed information") and item values of predetermined items (hereinafter referred to as "form items"). As shown in Figures 3 and 4, for the first invoice data SD1, the standardized section 22 is recorded on the first page of the form. And as shown in Figure 4, the standardized section 22 for the first invoice data SD1 records the form title 25 (in this example, the string "Invoice") as form fixed information. Furthermore, for the standardized section 22 for the first invoice data SD1, at least the following are defined as form items: invoice number <form item>, customer name <form item>, transaction date <form item>, and total amount <form item> (other form items also exist). The standardized portion 22 of the first invoice data contains the following items as item values for the above-mentioned form items: invoice number 26, customer name 27, transaction date 28, and total amount 29.
[0018] Hereinafter, the position in the image of the unit page 21 will be referred to as "page position". Page position is a concept that includes both the location of a defined area and the position of a point. In this embodiment, for all of the first to third invoice data SD1 to SD3, the standardized portion 22 is recorded on the first page of the form. Furthermore, the format of the standardized portion 22 is the same for the first to third invoice data SD1 to SD3. The same format of the standardized portion 22 means that the standardized portion 22 is recorded at the same page position, and furthermore, the same form fixed information is recorded at the same page position in the standardized portion 22, and item values that are common to all items are recorded at the same page position. For example, looking at the first invoice data SD1 and the second invoice data SD2 in Figure 3, the standardized portion 22 is recorded on the first page of the form in both cases, and furthermore, the page position of the standardized portion 22 on the first page of the form is the same. Furthermore, while the customer name 27 (string: "AAA Corporation") in the first invoice data SD1 and the customer name 27 (string: "BBB Corporation") in the second invoice data SD2 share the same form item, the page position of customer name 27 in the first invoice data SD1 is the same as the page position of customer name 27 in the second invoice data SD2.
[0019] In this example, the user in question wishes to split the PDF file 20 into separate invoice files. Specifically, the user in question wishes that by using this service, the PDF file 20 will be split into three separate PDF files: the first invoice data SD1, the second invoice data SD2, and the third invoice data SD3.
[0020] Furthermore, the format of similar documents issued by an operating entity (e.g., invoices, purchase orders, or quotations) is usually the same regardless of the trading partner to whom the documents are provided. In the course of an operating entity's economic activities, it is common for a PDF file to be generated that contains data from multiple similar documents (data equivalent to the invoice data SD in this example). Moreover, it is common for the generated PDF file to contain data from a considerable number of documents, such as 100 or even more than 1000. In such cases, it is common for the operating entity to want to split the underlying PDF file into separate files for each document, or to be required to split it.
[0021] After the PDF file of interest 20 is stored in the terminal storage unit 17, the user of interest launches the browser on the user terminal 3 and instructs it to access a predetermined URL on the information processing server 2. This predetermined URL is the URL for the upload screen. In response to this instruction, the terminal information processing unit 13 accesses the predetermined URL using the browser's functions. When accessing the URL, the user of interest logs in to the service using an appropriate method. When the server information processing unit 10 of the information processing server 2 receives the predetermined URL, it performs the necessary authentication and responds to the terminal information processing unit 13 with display data (HTML file and data attached to the HTML file) to display the upload screen. The terminal information processing unit 13 receives the display data and displays the upload screen on the terminal display unit 15 based on the display data using the browser's functions.
[0022] In the following, when the terminal information processing unit 13 displays various screens, it is assumed that necessary communication between the terminal information processing unit 13 and the server information processing unit 10 will naturally occur, and detailed explanations regarding communication may be omitted. Furthermore, the detection of operations on various screens displayed based on the display data transmitted from the server information processing unit 10 to the terminal information processing unit 13, the acquisition of information entered into various screens, the dynamic modification of various screens, and other screen-related processing will be appropriately executed by the server information processing unit 10 and the terminal information processing unit 13 using CGI, JavaScript (registered trademark), Ajax, DHTML, and other technologies, and detailed explanations will not be provided. In the following, when the terminal information processing unit 13 displays various screens on the terminal display unit 15 using the functions of a browser or other program, it may be expressed as "the terminal information processing unit 13 works with the server information processing unit 10 to display the ○○ screen on the terminal display unit 15" or simply "the terminal information processing unit 13 displays the ○○ screen."
[0023] Furthermore, unless otherwise specified below, the terminal information processing unit 13 executes various processes based on scripts implemented in the display data (HTML files, etc.) received from the server information processing unit 10, pre-installed programs (including browser plugins), and the functions of other programs. The terminal information processing unit 13 then executes the following processes as needed. Specifically, the terminal information processing unit 13 communicates with the server information processing unit 10 of the information processing server 2 as needed and obtains the information necessary for processing from the server information processing unit 10. The terminal information processing unit 13 also communicates with the server information processing unit 10 of the information processing server 2 as needed, requests the server information processing unit 10 to execute the necessary processes, and obtains the processing results. The information processing server 2 stores all the information to be provided to the terminal information processing unit 13. The server information processing unit 10 also has the function to execute processes in response to requests from the terminal information processing unit 13.
[0024] The upload screen is for uploading a PDF file located locally to the information processing server 2. The user of interest specifies the PDF file 20 on the upload screen and instructs the upload of that file. In response to this instruction, the terminal information processing unit 13 uploads (sends) the PDF file 20 to the information processing server 2. When the server information processing unit 10 receives the PDF file 20 of interest, it performs the following processing. Specifically, the server information processing unit 10 generates a work database and stores it in the server storage unit 12. The work database is a temporary database that stores various data used in processing the received PDF file 20 of interest. The server information processing unit 10 stores the received PDF file 20 of interest in the work database. Furthermore, the server information processing unit 10 generates display data for the split main screen 30 based on the PDF file 20 of interest and sends it to the terminal information processing unit 13. The terminal information processing unit 13 displays the split main screen 30 on the terminal display unit 15 based on the display data.
[0025] Figure 5 shows an example of the main screen 30 for splitting in this example. A page preview area 34 is provided on the left side of the main screen 30 for splitting. At the top of the page preview area 34, the total number of pages of the PDF file of interest 20 and a UI for zooming in / out on the page preview image 35 (described later) are displayed. The page preview image 35 is also displayed in the page preview area 34. The page preview image 35 is a preview image of the unit page 21 specified by the user of interest. Since the PDF file of interest 20 is a PDF file, the page preview image 35 is an image that matches the layout of the corresponding unit page 21 when printed. The user of interest can specify the unit page 21 using the scroll bar 38 of the main screen 30 for splitting. Note that the main screen 30 for splitting shown in Figure 5 is merely an example. For example, an area where thumbnail images of each unit page 21 are displayed in a list may be formed on the main screen 30 for splitting, and the unit page 21 on which to display the page preview image 35 may be specified by specifying a thumbnail image.
[0026] As shown in Figure 5, in the main split screen 30, a settings-related area 40 is provided to the right of the page preview area 34. The settings-related area 40 is an area where various settings can be configured. Unless otherwise specified, the server information processing unit 10 reflects the various settings made by the user in question via the settings-related area 40 and other UI elements in the work database.
[0027] As shown in Figure 5, a key item related area 41 is provided at the top of the settings related area 40. In the key item related area 41, a key item record 42 is displayed for each key item. A key item is an item that functions as the unit for area specification, which will be described later. In principle, depending on the type of report, items corresponding to some or all of the report items are prepared and registered in advance as key items. However, report fixed information and other information / items may also be used as key items. In this example, the following are registered in advance as key items: invoice number<key item>, customer name<key item>, transaction date<key item>, and total amount<key item>. Invoice number<key item>, customer name<key item>, transaction date<key item>, and total amount<key item> correspond to the report items invoice number<report item>, customer name<report item>, transaction date<report item>, and total amount<report item>, respectively. Figure 5 shows how the key item records 42 for each of the four key items described above are displayed in the key item related area 41. Furthermore, the system may be configured to allow users to freely add and delete key items, or edit the names of key items.
[0028] As shown in Figure 5, the key item record 42 includes a key item serial number 46, which is a serial number assigned to the key item, a key item name 45, area specification status information 47, and an area specification start button 48. The area specification status information indicates whether or not area specification, which will be described later, has been completed, and the default value is a value indicating that it has not been completed. The area specification start button 48 is the button that is selected when performing area specification (described later) for the corresponding key item.
[0029] The user of interest specifies the area for the desired key item among the key items. The following explains area specification using the example of the user of interest specifying the area for the invoice number <key item>. When specifying the area for the invoice number <key item>, the user of interest first specifies the unit page 21 that corresponds to the first page of the report as the unit page 21 on which the page preview image 35 will be displayed. In this example, the user of interest specifies the first page of either the first invoice data SD1, the second invoice data SD2, or the third invoice data SD3. Figure 5 shows the first page of the report (= the first page of the whole) of the first invoice data SD1 being specified, and the page preview image 35 of that page being displayed. The reason for specifying the first page of the report is that the standardized portion 22 is recorded on the first page of the report.
[0030] Next, the user selects the area selection start button 48 for key item record 42-1, which corresponds to the invoice number <key item>. When this button is selected, the terminal information processing unit 13 switches the operation mode to area selection mode. In this area selection mode, it becomes possible to select any area of the page preview image 35 in the page preview area 34. Area selection can be done using an appropriate method depending on the type of input device. For example, if the input device is a mouse or touch panel, it can be selected by dragging, which is a common method.
[0031] The user in question operates the input device to specify the area in the page preview image 35 where the invoice number 26, which is the item value of the invoice number <form item> corresponding to the invoice number <key item>, will be recorded. At that time, the user in question specifies the largest area in which the item value can be recorded. In other words, the user in question specifies an area in which the invoice number 26 will be included, regardless of the invoice data SD. Figure 6 shows the main screen 30 for splitting immediately after the user in question has specified the area corresponding to the invoice number <key item>. As shown in Figure 6, the terminal information processing unit 13 draws a rectangular area indication image 49 with a light blue background in the specified area. In the upper right corner of the area indication image, there is the corresponding key item serial number 46 and a cancel button to cancel the area specification. Hereinafter, the area specified in area specification mode will be referred to as the "specified area". Specifying the specified area is equivalent to "area specification".
[0032] Once the designated area related to the invoice number <key item> has been specified by the user of interest, the terminal information processing unit 13 cancels the area specification mode. The terminal information processing unit 13 then changes the area specification status information 47 of the key item record 42-1 corresponding to the invoice number <key item> to a value indicating that the area specification is complete. Furthermore, the terminal information processing unit 13 derives the coordinates of the designated area. The designated area coordinates represent the area of the designated area on the unit page 21 as coordinates in the coordinate system on which the unit page 21 is unfolded. For example, the designated area coordinates are information that holds a combination of the coordinates of the upper left corner and the coordinates of the lower right corner of the designated area. The terminal information processing unit 13 stores the derived designated area coordinates in a predetermined storage area (work area). The above is an explanation of area specification related to the invoice number <key item>.
[0033] The page preview area 34, the key item related area 41, and other UI related to area specification correspond to a "first user interface in which the user can specify any area from the preview image of a unit page that constitutes the target data in a file format that maintains the layout when printed." Furthermore, this UI corresponds to the "first user interface in which an area can be specified for each registered key item." The terminal information processing unit 13 has the function of providing such a first user interface (displayed on the terminal display unit 15).
[0034] The user then specifies the desired key items to be designated as areas. In this example, the user has designated areas for all of the following: Invoice Number <Key Item>, Customer Name <Key Item>, Transaction Date <Key Item>, and Total Amount <Key Item>. Hereafter, key items for which area designation has been completed will be referred to as "designated key items," and key items for which designation has not been completed will be referred to as "undesignated key items." Below the key item-related area 41 in the main split screen 30, there is a designated area checkbox 50. When this checkbox is checked, an area indication image 49 is displayed on the page preview image 35 for each designated key item. Figure 7 shows the main split screen 30 after all key items have been designated as areas and the designated area checkbox 50 has been checked.
[0035] As shown in Figures 5-7, in the settings-related area 40, below the specified area checkbox 50, there is an extracted information confirmation button 52. The operation of the control system 1 when the extracted information confirmation button 52 is selected by the user of interest will be described in detail below. When the extracted information confirmation button 52 is selected, the terminal information processing unit 13 executes information extraction processing. In this information extraction processing, the terminal information processing unit 13 executes key item individual processing for each specified key item. Key item individual processing for a single key item is the process of extracting information belonging to the specified area of that single key item from each of the unit pages 21. The key item individual processing when the target specified key item is customer name <key item> will be explained below using Figure 3.
[0036] In the individual key item processing related to the customer name <key item>, the terminal information processing unit 13 first obtains the target PDF file 20 and the specified area coordinates of the customer name <key item>. Next, the terminal information processing unit 13 identifies the first page (see Figure 3) of the unit pages 21 that make up the target PDF file 20 as the processing target. Then, the terminal information processing unit 13 identifies the specified area registered for the customer name <key item> by identifying the "area indicated by the obtained specified area coordinates" in the first page (PDF data). Referring to Figure 3, in this example, the terminal information processing unit 13 identifies area AR1 of the first page. Next, the terminal information processing unit 13 extracts the string belonging to the identified area AR1. In this embodiment, a string is a concept that includes one character.
[0037] The terminal information processing unit 13 performs optical character recognition on the information belonging to the specified area to recognize a string and extracts the string. However, if text information is embedded in the PDF data of the unit page 21, the terminal information processing unit 13 may extract the string belonging to the specified area by obtaining the corresponding string without performing optical character recognition. In other words, the method for extracting a string from the specified area is not limited. Referring to the first page of the PDF file 20 of interest in Figure 3, in this example, the terminal information processing unit 13 extracts the string "AAA Corporation" as the string belonging to area AR1. The first page of the whole corresponds to the first page of the document in the first invoice data SD1. Therefore, the string "AAA Corporation" extracted here is the item value of the customer name <document item> corresponding to the customer name <key item>.
[0038] The terminal information processing unit 13 extracts all of a series of strings as belonging to the specified area if a portion of the strings belongs to that area. However, there are cases where no strings belong to the specified area. In this case, the terminal information processing unit 13 does not extract any strings.
[0039] Once the extraction of strings for the first page of the entire system is complete, the terminal information processing unit 13 identifies the second page of the entire system as the target for processing. For the second page of the entire system, the terminal information processing unit 13 extracts strings belonging to the specified area in the same way as for the first page of the entire system. Referring to Figure 3 in this example, the terminal information processing unit 13 identifies area AR2 as the specified area for the second page of the entire system and extracts the string "item A5" as the string belonging to area AR2. Here, the second page of the entire system corresponds to the second page of the first invoice data SD1, and not the first page of the document. Therefore, the extracted string "item A5" is not the item value of the customer name <document item> corresponding to the customer name <key item>, but rather part of the detail information.
[0040] The terminal information processing unit 13 extracts strings belonging to the specified area of the customer name <key item> for the third page and subsequent pages in the same manner, extracting strings for all unit pages 21. This concludes the explanation of the individual key item processing related to the customer name <key item>. As a result of the individual key item processing related to the customer name <key item>, strings (information) belonging to the specified area of the customer name <key item> are extracted for each unit page 21. As described above, the terminal information processing unit 13 performs individual key item processing for each key item in the information extraction process. As a result, when the information extraction process is completed, each unit page 21 will have strings (information) belonging to the specified area for each key item extracted. The terminal information processing unit 13 stores the processing results of the information extraction process in a predetermined storage area (work area). In the following explanation, the strings extracted as belonging to the specified area will be referred to as "extracted information".
[0041] As described above, the terminal information processing unit 13 (information processing unit) is equipped with a function to extract information belonging to the designated area for each of the unit pages as extracted information and a function to extract information belonging to the designated area for each of the key items for each of the unit pages as extracted information.
[0042] After the information extraction process is completed, the terminal information processing unit 13 pops up the extracted information list screen 53 based on the processing results. Figure 8 shows the extracted information list screen 53 in this example. As shown in Figure 8, the extracted information list screen 53 has an extracted information record 54 for each unit page 21. The extracted information records 54 are displayed in page order. The extracted information record 54 has an extracted information in addition to the page number (information indicating which page of the PDF file 20 is being examined) for each key item. In other words, the extracted information list screen 53 displays a list of extracted information (information belonging to the specified area) for each key item for each unit page 21. However, for unspecified key items, "Unspecified" is displayed to indicate that the specified area is not specified. Also, for key items from which no extracted information was obtained, "Not Extracted" is displayed. For example, in Figure 8, the first extracted information record, 54-1, shows that for the entire first page, the string "ID001" was extracted for the invoice number <key item>, the string "AAA Corporation" was extracted for the customer name <key item>, the string "November 1, 2024" was extracted for the transaction date <key item>, and the string "7,700 yen" was extracted for the total amount <key item>.
[0043] The extracted information list screen 53 corresponds to "a fourth user interface in which the extracted information is displayed in a list for each unit page" and "a fourth user interface in which the extracted information is displayed in a list for each of the key items for each unit page." The terminal information processing unit 13 has the function of providing such a fourth user interface (displayed on the terminal display unit 15). The significance of the extracted information list screen 53 will become clear later. The above is a description of the operation of the control system 1 when the extracted information confirmation button 52 is selected by the user of interest.
[0044] As shown in Figure 8, the extracted information list screen 53 is provided with a value processing rule setting button 55. The value processing rule setting button 55 is selected when setting value processing rules (described later) for the extracted information. The operation of the control system 1 when the value processing rule setting button 55 is selected by the user of interest will be described below. When the value processing rule setting button 55 is selected, the terminal information processing unit 13 displays the value processing rule setting screen 56 as a pop-up. Figure 9 is a diagram showing an example of the value processing rule setting screen 56 in its initial state. On the value processing rule setting screen 56, value processing rules can be set on a key item basis. A value processing rule is a rule for processing the values of the extracted information. On the value processing rule setting screen 56, a value processing rule record 57 is displayed for each value processing rule. The value processing rule records 57 can be freely added / deleted using the add / delete buttons, and the user of interest can add / delete value processing rules by adding / deleting the value processing rule records 57.
[0045] The value processing rule record 57 is provided with a key item input field 60 for entering the target key item and a processing method input field 61 for entering the processing method. The record is also provided with an accompanying information input area 62 for entering accompanying information. The accompanying information input area 62 has appropriate input fields formed according to the specified processing method. The key item input field 60 is provided with a pull-down menu that lists each key item, and input can be made into the input field by selecting one item value from the item values in the pull-down menu. The processing method input field 61 is provided with a pull-down menu that lists each processing method, and input can be made into the input field by selecting one item value from the item values in the pull-down menu. In this embodiment, the processing methods provided are replacement <processing method>, conversion <processing method>, value extraction <processing method>, value deletion <processing method>, and value padding <processing method>. The configurable value processing rules for each processing method will be described below.
[0046] When the replacement <processing method> is selected as the processing method, the accompanying information input area 62 is provided with a pre-replacement input field 63 for inputting the pre-replacement character string and a post-replacement input field 64 for inputting the post-replacement character string. According to the replacement <processing method>, it is possible to set a value processing rule (a rule for replacing a specific value included in the extraction information with a predetermined value) for replacing the pre-replacement character string included in the extraction information with the post-replacement character string for the key item specified in the key item input field 60. Note that the post-replacement character string can also be not specified. When the post-replacement character string is not specified, the value processing rule means deleting the pre-replacement character string from the extraction information. (A) in FIG. 10 is an example of the value processing rule related to the replacement <processing method>. (A) in FIG. 10 shows a value processing rule for deleting the character string "yen" from the extraction information of the total amount <key item>. In this example, for instance, when the extraction information of the total amount <key item> is the character string "7,700 yen", the value after processing according to the value processing rule becomes "7,700". In addition, as a value processing rule related to the replacement <processing method>, for example, a rule for changing the character string "Limited Company" to the character string "Company" for the extraction information of the customer name <key item> can be set.
[0047] When the conversion <processing method> is selected as the processing method, the accompanying information input area 62 is provided with a pre-conversion input field 65 for inputting the target display format (hereinafter referred to as the "target display format") and a post-conversion input field 66 for inputting the post-conversion display format (hereinafter referred to as the "post-conversion display format"). According to the conversion <processing method>, for the key item specified in the key item input field 60, a value processing rule (a rule for converting the display format of the extraction information into a predetermined display format) for converting the target display format of the extraction information into the post-conversion display format can be set. (B) of FIG. 10 is an example of the value processing rule related to the conversion <processing method>. As the target display format, formats such as alphabet, number, katakana, and date can be selected from a pull-down menu. For the post-conversion display format, options corresponding to the target display format are displayed in a pull-down menu and can be selected. For example, when the target display format is alphabet, upper case, lower case, full-width, and half-width can be selected as the post-conversion display format. (B) of FIG. 10 shows a value processing rule for converting the extraction information of the claim number <key item> to upper case for alphabet. When the target display format is "date format", YYYYMMDD, YYYY / MM / DD, YYYY year MM month DD day, and other display formats can be selected as the post-conversion display format.
[0048] When the value extraction <processing method> is selected as the processing method, the accompanying information input area 62 is provided with a start position input field 67 for inputting the start position (beginning or end) and a character count input field 68 for inputting the number of characters. According to the value extraction <processing method>, for the extraction information of the key item specified in the key item input field 60, a value processing rule (a rule for extracting the value of a specific part of the extraction information) for extracting the specified number of characters from the start position can be set. (C) of FIG. 10 is an example of the value processing rule related to the value extraction <processing method>. (C) of FIG. 10 shows a value processing rule for extracting the first 4 characters from the extraction information of the customer name <key item>. In this example, for instance, when the extraction information of the customer name <key item> is the character string "AAA Corporation", the processed value according to the value processing rule is "AAA Corporation".
[0049] According to the value deletion processing method, a value processing rule can be set to delete the value from the extracted information of the key item specified in the key item input field 60.
[0050] When value padding is selected as the processing method, the accompanying information input area is provided with a character limit input field 69 for entering the adjusted number of digits, a padding character input field 70 for entering padding characters, and a padding position input field 71 for entering the padding position. According to value padding, a value processing rule (a rule that pads the value of the extracted information in a predetermined manner) can be set for the extracted information of the key item specified in the key item input field 60, which pads the padding characters at the padding position until the number of digits (=number of characters) of the processed extracted information becomes the adjusted number of digits. Figure 10(D) is an example of a value processing rule related to value padding. Figure 10(D) shows a value processing rule for the extracted information of invoice number (key item) which pads the beginning with the character "0" until the number of digits (=number of characters) becomes 10 characters. In this example, if the extracted information for the invoice number <key item> is the string "ID001", the value processed according to the value processing rule will be "00000ID001".
[0051] The value processing rules are set to process values so that the division conditions or individual division conditions described later are applied appropriately. The value processing rule setting screen 56 corresponds to a third user interface, and the terminal information processing unit 13 has the function of providing a third user interface. The above is a description of the operation of the control system 1 when the value processing rule setting button 55 is selected by the user of interest.
[0052] As shown in Figure 8, the extracted information list screen 53 is equipped with a switching UI 72 that allows the user to switch between displaying the extracted information as is or displaying information processed according to a value processing rule set by the user (hereinafter referred to as "processed information"). Figure 11 shows the screen when the user is instructed to display processed information using the switching UI 72 on the extracted information list screen 53 in Figure 8, in the case where a value processing rule (Figure 10 (A)) is set to "remove the string "yen" from the extracted information of the total amount <key item>" under Replacement <Processing Method>. As is clear from comparing Figure 8 and Figure 11, in the screen of Figure 11, the string "yen" has been removed from the extracted information of the total amount <key item>.
[0053] As shown in Figure 8, the extracted information list screen 53 is provided with a button 58 for setting deemed rules. The button 58 for setting deemed rules is selected when setting deemed rules (described later) for the extracted information. The operation of the control system 1 when the deemed rule setting button 58 is selected by the user of interest will be described below. When the deemed rule setting button 58 is selected, the terminal information processing unit 13 displays the deemed rule setting screen 59 as a pop-up. Figure 12 is a diagram showing an example of the deemed rule setting screen 59 in its initial state. On the deemed rule setting screen 59, deemed rules can be set on a key item basis. A deemed rule is a rule that, in determining the success or failure of the division conditions (individual division conditions) described later, if the value of the extracted information on one unit page 21 is the same as a specified specific value, the value of the extracted information is considered to be the value on another unit page 21 that is in a predetermined positional relationship with that unit page 21. The deemed rule setting screen 59 displays a deemed rule record 90 for each deemed rule. Deemed rule record 90 can be freely added / deleted using the add / delete buttons, and users can add / delete deemed rules by adding / deleting deemed rule record 90.
[0054] The deemed rule record 90 includes a key item input field 91 for entering the target key item, a specific value input field 92 for entering a specific value, and a previous / next input field 93 for specifying the previous / next date. According to one deemed rule record 90, for a given unit page 21, if the value of the extracted information specified in the key item input field 91 is the same as the specific value specified in the specific value input field 92, it is possible to set a deemed rule that considers the value of the extracted information to be the value of the other unit page 21 that is "one page before" or "one page after" the unit page 21. For example, the deemed rule record 90 in Figure 12 indicates a deemed rule that, in determining the success or failure of the splitting conditions (individual splitting conditions) described later, if the value of the extracted information for a given unit page 21 is the string "*****", then the value of the extracted information for that unit page 21 is considered to be the value of the extracted information for the "customer name <key item>" on the unit page 21 that is "one page before". The significance of being able to set deemed rules will be described later.
[0055] The screen 59 for setting deemed rules corresponds to the fifth user interface, and the terminal information processing unit 13 has the function of providing the fifth user interface (displayed on the terminal display unit 15). The above describes the operation of the control system 1 when the button 58 for setting deemed rules is selected by the user of interest, and also describes the operation of the control system 1 when the button 52 for confirming extracted information is selected by the user of interest.
[0056] As shown in Figures 5-7, below the extraction information confirmation button 52 in the settings-related area 40, there is a split condition setting button 74, which is selected when setting split conditions (described later). After the user specifies the area for the desired key item, they select the split condition setting button 74 to set the split conditions. When this button is selected, the terminal information processing unit 13 displays the split condition setting screen 73 as a pop-up.
[0057] Before explaining the screen 73 for setting splitting conditions, we will now explain the relationship between splitting conditions and the splitting of a PDF file (hereinafter referred to as "this file splitting"). Splitting conditions are conditions used to determine the splitting position of a PDF file, and in particular, conditions that use extracted information (information belonging to a specified area). When splitting this file, the terminal information processing unit 13 determines whether the splitting conditions are met or not for each unit page 21. If there is a unit page 21 for which the splitting conditions are met, the terminal information processing unit 13 sets the splitting position to be immediately before that unit page 21 (between that unit page 21 and the unit page 21 immediately preceding it). However, if the unit page 21 for which the splitting conditions are met is the first page of the entire file, then naturally, the area immediately before it will not be the splitting position. For example, referring to Figure 3, suppose that the splitting conditions are met only on the 4th page of the PDF file of interest 20. In this case, the terminal information processing unit 13 splits the PDF file of interest 20 with the area immediately before the 4th page as the splitting position. As a result, the PDF file of interest 20 is split into two PDF files: one for pages 1-3 and another for pages 4 and 5. Alternatively, suppose the splitting conditions are met for pages 1, 3, and 5 of the PDF file of interest 20. In this case, the terminal information processing unit 13 splits the PDF file of interest 20, using the points immediately before page 3 and immediately before page 5 as splitting points. As a result, the PDF file of interest 20 is split into three PDF files: one for pages 1 and 2, one for pages 3 and 4, and one for page 5.
[0058] Figure 13 shows an example of the screen 73 for setting split conditions. On the screen 73 for setting split conditions, individual split conditions can be set using key items as units. An individual split condition is an individual rule that constitutes a split condition. A split condition can be composed of one individual split condition, an AND condition of multiple individual split conditions, or an OR condition of multiple individual split conditions. On the screen 73 for setting split conditions, an individual split condition record 75 is displayed for each individual split condition. Individual split condition records 75 can be freely added / deleted using the add / delete buttons, and the user can add / delete individual split conditions by adding / deleting individual split condition records 75.
[0059] The individual splitting condition record 75 includes a key item input field 76 for entering the target key item, a value status input field 77 for entering the value status, and a comparison value input field 78 for entering the comparison value. The individual splitting condition record 75 also includes a radio button 79 for switching whether to use the extracted information itself or the processed information (information processed according to the value processing rules) when determining whether the individual splitting condition is met. Hereafter, the state in which the use of "processed information" is specified by switching the radio button 79 may be expressed as "processed information is specified."
[0060] The key item input field 76 has a pull-down menu displaying a list of each specified key item, and input can be made by selecting one item value from the pull-down menu. The value status input field 77 has a pull-down menu displaying a list of each value status, and input can be made by selecting one item value from the pull-down menu. The value status is the state of the extracted information of the specified key item or its relationship to other values. The value status can be selected from the item values displayed in the pull-down menu of the value status input field 77. In this embodiment, the following value states are available: Different from previous page (expressed as "different from the previous page" in Figure 13), Equal to (expressed as "equal to the next"), Not equal to (expressed as "different from the next"), Greater than or equal to (expressed as "greater than or equal to"), Greater than or equal to (expressed as "greater than"), Less than or equal to (expressed as "less than or equal to"), Less than or equal to (expressed as "less than"), and Blank (expressed as "blank").
[0061] According to the previous page difference <value status>, an individual splitting condition can be set for a unit page if the value of the extracted information for a specified key item on a unit page 21 is different from the value of the extracted information for a specified key item on the unit page 21 immediately preceding that unit page 21. If "processed information" is specified, the processed information is used instead of the extracted information when determining whether the individual splitting condition is met. Figure 14(A) is an example of an individual splitting condition related to the previous page difference <value status>. If the individual splitting condition in Figure 14(A) is set, the individual splitting condition will be met for a unit page 21 if the value of the extracted information for the customer name <key item> on a unit page 21 is different from the value of the extracted information for the customer name <key item> on the unit page 21 immediately preceding that unit page 21.
[0062] According to the Equals <Value State>, an individual splitting condition can be set for a unit page 21 that is met when the value of the extracted information of a specified key item in a unit page 21 is "equal" (a predetermined relationship) to the specified comparison value. If "processed information" is specified, the processed information is used instead of the extracted information when determining whether the individual splitting condition is met. The individual splitting condition related to Equals <Value State> can also be applied even if the extracted information is "date". Figure 14(B) is an example of an individual splitting condition related to Equals <Value State>. If the individual splitting condition in Figure 14(B) is set, the individual splitting condition will be met for a unit page 21 if the processed information of the total amount <key item> in a certain unit page 21 is equal to "1,000".
[0063] According to Not Equals <Value State>, Greater Than <Value State>, Greater Than <Value State>, Less Than <Value State>, and Less Than <Value State>, just like with Equals <Value State>, it is possible to set individual division conditions that are valid for a unit page 21 when the value of the extracted information of a specified key item in a unit page 21 has a predetermined relationship with a specified comparison value. The predetermined relationship is that Not Equals <Value State> is "different from the comparison value", Greater Than <Value State> is "greater than or equal to the comparison value", Greater Than <Value State> is "greater than the comparison value", Less Than <Value State> is "less than or equal to the comparison value", and Less Than <Value State> is "less than or equal to the comparison value".
[0064] According to the blank state <value state>, individual splitting conditions can be set for a single unit page 21 that are met when the extraction information for a specified key item in a single unit page 21 is blank.
[0065] As shown in Figure 13, the screen 73 for setting division conditions is provided with radio buttons 80 to switch whether the division condition is an AND condition or an OR condition for each individual division condition when there are multiple individual division conditions. For example, if two individual division conditions are set and an AND condition is selected, the division condition is determined to be met for a unit page 21 if both of the two individual division conditions are met for that unit page 21. In other words, if either of the individual division conditions is not met, or if neither of the individual division conditions is met, the division condition is determined to be not met.
[0066] The user of interest sets appropriate splitting conditions (individual splitting conditions) on the splitting condition setting screen 73 so that the PDF file of interest 20 is split according to their wishes. The user of interest can then set accurate splitting conditions (individual splitting conditions) by referring to the extracted information list screen 53. The extracted information list screen 53 displays the extracted information for each key item for each unit page 21, so the user can understand where the splitting will occur depending on what splitting conditions are set. As mentioned above, in this example the user of interest wants the PDF file of interest to be split into a PDF file for the first invoice data SD1, a PDF file for the second invoice data SD2, and a PDF file for the third invoice data SD3. Based on this, for example, referring to Figures 8 and 11, the user of interest can set the following splitting conditions. The following splitting conditions are merely examples. • Example 1: The value of the processed information for the total amount <key item> is "0" or greater (see (C) in Figure 14) Example 2: The extracted information value for Transaction Date <Key Item> is the same as "November 11, 2024" (see (D) in Figure 14).
[0067] In this embodiment, various conditions can be set as splitting conditions from various perspectives. Furthermore, the user can freely specify the designated area that forms the basis of the extracted information used for the splitting conditions. Therefore, in this embodiment, regardless of the content of the underlying PDF file, there is a very high probability that splitting conditions exist that will perform the splitting in the desired manner.
[0068] The screen 73 for setting division conditions corresponds to "a second user interface that allows setting division conditions using information belonging to a specified area which is an area specified by the first user interface on the unit page" and "the second user interface that allows setting individual division conditions constituting the division conditions on a key item basis." The terminal information processing unit 13 has a function to provide such a second user interface.
[0069] The user, after setting the splitting conditions, closes the splitting conditions setting screen 73 by pressing the close button. As shown in Figures 5-7, below the splitting conditions setting button 74 in the settings-related area 40, there is a file name rule setting button 81. When the file name rule setting button 81 is selected, the terminal information processing unit 13 displays a screen for setting the file name rules (hereinafter referred to as "file name rules") to be assigned to each of the split PDF files. In this embodiment, it is possible to set a file name rule that concatenates the extracted information of one or more specified key items of the split PDF files in any order. Note that file name rules do not have to be set. If no file name rules are set, the terminal information processing unit 13 assigns file names to each of the split PDF files according to a predetermined default rule.
[0070] As shown in Figures 5-7, below the file name rule setting button 81 in the settings-related area 40, there are a settings save button 86 and a past settings use button 87. The settings save button 86 is operated when saving the various settings made via the splitting main screen 30 (including the accompanying screens). The various settings include settings related to the specified area of each key item (area specification made using the first user interface), settings related to value processing rules, settings related to deemed rules, and settings related to splitting conditions (splitting condition settings made using the second user interface). If the user wishes to save the various settings made this time, they select the settings save button 86. When the settings save button 86 is selected, the terminal information processing unit 13 displays a UI with an input field for entering a name to be assigned to the setting (hereinafter referred to as "setting name") and a button to instruct saving the setting. The user enters the setting name in the input field and selects the button. When the button is selected, the terminal information processing unit 13 generates past setting information indicating various settings and sends the setting name and past setting information to the server information processing unit 10. The past setting information includes all the information necessary to reproduce the various settings. When the server information processing unit 10 receives the setting name and past setting information, it stores the setting name and past setting information in a predetermined database as information about the user of interest.
[0071] The Past Settings Use button 87 is selected when the user wishes to apply various settings made in the past. When a user wishes to apply various settings made in the past, they select the Past Settings Use button 87. When the Past Settings Use button 87 is selected, the server information processing unit 10 sends the "setting name and past setting information" corresponding to the user to the terminal information processing unit 13. The terminal information processing unit 13 displays a UI in which each setting name is selectable. The user specifies the desired setting name from among the setting names. In response to this specification, the terminal information processing unit 13 automatically applies various settings based on the past setting information corresponding to the specified setting name. Thus, according to this embodiment, the user can easily apply the same settings as those made in the past.
[0072] As shown in Figures 5-7, in the settings area 40, below the settings save button 86 and the past settings use button 87, there is a split start button 82. The split start button 82 is a button that instructs the start of the file splitting process. After making various settings related to the settings area 40, the user selects the split start button 82. When the execution button is selected, the terminal information processing unit 13 and the server information processing unit 10 execute the file splitting in the following manner. Specifically, the terminal information processing unit 13 obtains the PDF file of interest 20, the splitting conditions (individual splitting conditions), and other information necessary for executing the file splitting. Next, the terminal information processing unit 13 executes the information extraction process described above and extracts information for each key item for each unit page 21.
[0073] Next, the terminal information processing unit 13 identifies the splitting position of the PDF file 20 according to the splitting conditions, based on the PDF file 20 of interest, the splitting conditions, and the processing results of the information extraction process. More specifically, the terminal information processing unit 13 uses the extracted information to determine whether the splitting conditions are met for each unit page 21. In particular, if the splitting conditions consist of multiple individual splitting conditions (which may be AND conditions or OR conditions), the terminal information processing unit 13 uses the extracted information to determine whether the individual splitting conditions are met for each key item of each unit page 21, and determines whether the splitting conditions are met based on the status of the individual splitting conditions for each key item. Next, the terminal information processing unit 13 identifies the position immediately before the unit page 21 where the splitting conditions are met as the splitting position. If processed information is specified, the terminal information processing unit 13 uses the processed information to determine whether the splitting conditions are met or not. If a file name rule is set, the terminal information processing unit 13 generates a file name for each of the split files according to that rule. On the other hand, if no such rule is set, the terminal information processing unit 13 generates the filenames for each of the split files according to the default rule. The terminal information processing unit 13 sends the processing result (including at least the identified splitting position and filenames) to the server information processing unit 10. Based on the processing result, the server information processing unit 10 splits the PDF file of interest 20 so that it is split at the splitting position.
[0074] For example, suppose the user sets a splitting condition (Figure 14 (C)) that "the value of the processed information for the total amount <key item> is '0' or greater." In this case, referring to Figure 3 (and also Figure 11), the terminal information processing unit 13 determines that the splitting condition is met on the first page of the whole document (= first page of the report for the first invoice data SD1), the third page of the whole document (= first page of the report for the second invoice data SD2), and the fifth page of the whole document (= first page of the report for the third invoice data SD3), and sets the splitting positions to be immediately before the third and fifth pages of the whole document. The server information processing unit 10 then splits the PDF file 20 of interest so that it is split at the splitting positions. As a result, the PDF file 20 of interest is split as desired by the user.
[0075] After performing the file splitting, the server information processing unit 10 stores each of the generated PDF data into a designated folder in the storage area of the server storage unit 12 (or any other storage area accessible to the server information processing unit 10). Furthermore, the server information processing unit 10 generates display data for the processing result screen 83 and sends it to the terminal information processing unit 13. The terminal information processing unit 13 displays the processing result screen 83 on the terminal display unit 15 based on the display data. Figure 15 shows an example of the processing result screen 83 in this example. As shown in Figure 15, the processing result screen 83 displays a split data record 84 for each of the PDF data generated in accordance with the file splitting. The split data record 84 displays the file name and the number of pages in the file. The split data record 84 also has a download button 85. When the user selects the download button 85, the terminal information processing unit 13, in cooperation with the server information processing unit 10, downloads the corresponding PDF data and stores it in the terminal storage unit 17. In this way, the split PDF data becomes freely available to the user, either on the cloud or locally.
[0076] As shown in Figure 15, the processing result screen 83 is provided with an exclusion condition setting button 95. The exclusion condition setting button 95 is selected when setting exclusion conditions, which are the conditions for pages to be excluded from the split data, for each of the PDF data generated when the PDF file of interest 20 is split (hereinafter referred to as "split data"). When the exclusion condition setting button 95 is selected, the terminal information processing unit 13 displays an exclusion condition setting screen (not shown; corresponding to the sixth user interface) on the terminal display unit 15. Exclusion conditions can be set on the exclusion condition setting screen. As exclusion conditions, it is possible to set conditions that explicitly specify the range of pages to be excluded from each page of the split data. For example, it is possible to set a condition to exclude page 2, a condition to exclude pages from page 2 onwards, or a condition to exclude pages 2 to 5. Furthermore, as exclusion conditions, it is possible to set conditions with the same content as the split conditions (as mentioned above, the split conditions can be AND conditions or OR conditions of the individual split conditions) using extracted information of specific key items. In this case, the terminal information processing unit 13 identifies the pages that satisfy the exclusion conditions for each of the divided data, and excludes (removes) the pages that satisfy the conditions.
[0077] The exclusion condition setting screen has buttons that instruct the generation of data (hereinafter referred to as "excluded data") for each of the divided data sets, excluding the appropriate pages according to the exclusion conditions. When a user of interest selects one of these buttons, the terminal information processing unit 13 refers to the exclusion conditions set on the exclusion condition setting screen and identifies the pages to be excluded for each of the divided data sets. The terminal information processing unit 13 sends the processing result to the server information processing unit 10. Based on the processing result, the server information processing unit 10 generates data (hereinafter referred to as "excluded data") for each of the divided data sets, excluding the pages that should be excluded. Based on the results of the generation of the excluded data, the terminal information processing unit 13 displays an overview of each of the excluded data sets and a UI that allows the user to instruct the user to download any excluded data locally. The user of interest can use this UI to download the desired excluded data.
[0078] By the way, as mentioned above, in this embodiment, a deemed rule can be set. Below, we will explain the operation of the control system 1 when a deemed rule is set, and the significance of being able to set a deemed rule. Figure 16 is a diagram showing the contents of the PDF file before file splitting (hereinafter referred to as "basic file 98") in order to explain matters related to the deemed rule. Basic file 98 consists of three invoice data X1, X2, and X3. Invoice data X1 is 3 pages of data (pages 1 to 3 of basic file 98), invoice data X2 is 3 pages of data (pages 4 to 6 of basic file 98), and invoice data X3 is 2 pages of data (pages 7 to 8 of basic file 98). Each of the invoice data X1, X2, and X3 has a format in which the item value of the customer name <form item> is recorded in the upper right corner on all pages. Furthermore, in invoice data X1, X2, and X3, the first page of the document records Customer Name 27 (i.e., the name of the invoice issuer) in the position where the value of Customer Name <Document Item> should be recorded, while on the second page and subsequent pages of the document, the string "*****" is recorded in place of Customer Name 27. This practice of storing the appropriate item value on the first page of the document for a given document item, and then recording a value on subsequent pages that indicates it is the same as the first page (i.e., a repetition of the first page), is actually implemented in many cases.
[0079] In the above case, assume that the "deemed rule" shown in Figure 12 is set. That is, assume that the "deemed rule" is set such that, when determining whether the splitting conditions (individual splitting conditions) are met, if the value of the extracted information for the customer name <key item> for a certain unit page 21 is the string "*****", then the value of the extracted information for that unit page 21 is considered to be the value of the extracted information for the customer name <key item> for the "previous" unit page 21. In this case, the terminal information processing unit 13 uses the extracted information to which the deemed rule has been applied for each unit page 21 to determine whether the splitting conditions are met. That is, when determining whether the splitting conditions are met, the terminal information processing unit 13 considers the value of the extracted information for the customer name <key item> for the second and third pages of the entire invoice data X1 to be "XXX Corporation" instead of the string "*****". Similarly, when determining whether the splitting conditions are met, the terminal information processing unit 13 considers the extracted information value of the customer name <key item> on the 5th and 6th pages of the invoice data X2 to be YYY Corporation, rather than the string "*****". Similarly, when determining whether the splitting conditions are met, the terminal information processing unit 13 considers the extracted information value of the customer name <key item> on the 8th page of the invoice data X3 to be ZZZ Corporation, rather than the string "*****".
[0080] Now, the user of the base file 98 naturally wants to split the base file 98 into three files: a file for invoice data X1, a file for invoice data X2, and a file for invoice data X3. In this case, the user only needs to set the splitting condition shown in (A) of Figure 14 (a condition consisting of one individual splitting condition). That is, the user only needs to set the splitting condition that "is met for a unit page 21 if the extracted information value of the customer name <key item> on a certain unit page 21 is different from the extracted information value of the customer name <key item> on the unit page 21 immediately preceding that unit page 21." When this splitting condition is set, the value considered to be the extracted information for the third page of the base file 98 (XXX Corporation) and the extracted information value for the fourth page of the base file 98 (YYY Corporation) are different, so the terminal information processing unit 13 determines that the splitting condition is met for the fourth page of the base file in this file splitting. As a result, the terminal information processing unit 13 identifies the area immediately before the fourth page of the base file as the splitting position. Similarly, since the value considered to be extracted information for the sixth page of the entire file (YYY Corporation) differs from the value of the extracted information for the seventh page of the entire file (ZZZ Corporation), the terminal information processing unit 13 determines that the splitting condition is met for the seventh page of the entire file in this file splitting operation. As a result, the terminal information processing unit 13 identifies the point immediately preceding the seventh page of the entire file as the splitting location.
[0081] Thus, because assumption rules can be set, users can sometimes split files in their desired manner by setting simple splitting conditions, and this is a major advantage of being able to set assumption rules. However, assumption rules are not only used in the cases described above; they can be freely used in other cases as well, as long as they contribute to splitting PDF files in the desired manner.
[0082] As described above, the information processing system (control system 1, information processing server 2, user terminal 3) according to this embodiment includes an information processing unit (server information processing unit 10, terminal information processing unit 13) which has the following functions: a first user interface that allows the user to specify an arbitrary area from a page preview image 35 of a unit page 21 specified by the user; a second user interface that allows the user to set division conditions using information (extracted information) belonging to a specified area, which is the area specified by the first user interface on the unit page 21; and a function to divide the target data (noteworthy PDF file 20) according to the division conditions set by the second user interface. With this configuration, when dividing a PDF file (data in a file format that maintains the layout when printed), the user only needs to specify an area using the first user interface and set division conditions using the second user interface. After performing these operations, the data will be automatically divided according to the division conditions. Therefore, with the above configuration, even if the total number of pages in the PDF file (data in a file format that maintains the layout when printed) is large and the number of divisions is large, the burden on the user when dividing the data can be reduced.
[0083] <Variation> Although one embodiment of the present invention has been described above, the above embodiment is merely an example of how the present invention can be implemented, and the technical scope of the present invention should not be interpreted as being limited by it. That is, the present invention can be implemented in various forms without departing from its gist or its main features. The following are modifications of the above embodiment. The following modifications may be applied in combination where possible.
[0084] In the above embodiment, the server information processing unit 10 divided the target data (the data subject to file division) at the point immediately preceding the unit page 21 in which the division condition is met. In this regard, the server information processing unit 10 may be configured to divide the target data in a different manner based on the unit page 21 in which the division condition is met. In this case, the user may be able to set the manner in which the target data is divided based on the unit page 21. For example, the server information processing unit 10 may be configured to divide the data at the point "immediately after" the unit page 21 in which the division condition is met. In the above embodiment, on the screen 73 for setting split conditions, it was possible to set individual split conditions that would be met for a given unit page if the "value of the extracted information of a specified key item in a given unit page 21" was different from the "value of the extracted information of a specified key item in the unit page 21 immediately preceding that unit page 21." In this regard, the unit page 21 compared with a given unit page 21 is not limited to the immediately preceding unit page 21, but can be any unit page 21 in a predetermined positional relationship. For example, it could be the immediately following unit page 21. The same applies to the deemed rules. • The data that can be stored in a file format that preserves the layout when printed is not limited to PDF files. • In the above embodiment, an invoice was given as an example of a document, but the document is not limited to an invoice. In the above embodiment, in addition to the file splitting described herein, the configuration may allow the PDF file to be split using other methods specified by the user. For example, the configuration may allow the file to be split into groups of pages specified by the user, or it may allow the file to be split at a splitting position explicitly specified by the user. The configurable splitting conditions (individual splitting conditions) are not limited to the exemplified splitting conditions. For example, in the case of individual splitting conditions that use comparison values, the comparison values are not entered by the user, but can be values recorded in pre-prepared data (concepts including masters, tables, and databases) (hereinafter referred to as "candidate values"). In this case, as an individual splitting condition, for example, it is possible to set a condition such as "the value of the extracted information of the specified key item matches any of the candidate values recorded in the pre-prepared data (concepts including masters, tables, and databases)," or for example, "the value of the extracted information of the specified key item matches a specific value among the candidate values recorded in the pre-prepared data." The same applies to the specific values of the assumed rules.
[0085] In the above embodiment, it is also possible that some or all of the data that the server storage unit 12 stores is stored in a storage unit of an external device accessible by the server information processing unit 10. Regarding the above embodiment, it is also possible to configure the system so that some or all of the processes described as being executed by the browser are executed by an application other than the browser. The functional blocks shown in the above embodiments can be implemented using any hardware, or through the collaboration of any hardware and any software. In other words, these functional blocks are not limited to specific hardware. Furthermore, the embodiment may include providing a program to be executed by the computer of the information processing server 2 or the user terminal 3. The embodiment may also include providing a recording medium on which the program is recorded in a way that allows it to be read by a computer. The recording medium can be a magnetic, optical, or semiconductor memory device. Specifically, examples include portable or fixed recording media such as flexible disks, HDDs (Hard Disk Drives), CD-ROMs (Compact Disk Read Only Memory), DVDs (Digital Versatile Disks), Blu-ray® Discs, magneto-optical disks, flash memory, and card-type recording media.
[0086] Furthermore, in the above embodiment, the device having a certain function is not limited to the device exemplified as the device having that function. For example, consider a function that provides a second user interface (referred to as the "first function"), a function that identifies the division position of the target data according to the division conditions set in the second user interface (referred to as the "second function"), and a function that divides the PDF file based on the identified division position (referred to as the "third function"). In the above embodiment, as shown in Figure 17(A), the terminal information processing unit 13 of the user terminal 3 is equipped with the first and second functions, and the server information processing unit 10 of the information processing server 2 is equipped with the third function. In this configuration, the combination of the information processing server 2 and the user terminal 3 functions as an "information processing system". Also, the server information processing unit 10 and the terminal information processing unit 13 each function as an "information processing unit". On the other hand, as shown in Figure 17(B), the terminal information processing unit 13 of the user terminal 3 may be equipped with the first function, the second function, and the third function. In this configuration, user terminal 3 functions as an "information processing system," and terminal information processing unit 13 functions as an "information processing unit." Alternatively, as shown in Figure 17(C), the server information processing unit 10 may be configured to have a first function, a second function, and a third function. In this configuration, information processing server 2 functions as an "information processing system," and server information processing unit 10 functions as an "information processing unit." When both the server information processing unit 10 and terminal information processing unit 13 function as "information processing units," the functions provided in each information processing unit are not limited. Furthermore, a configuration in which one function is realized through the cooperation of the server information processing unit 10 and terminal information processing unit 13 is also possible. In addition, the device that realizes a certain function may be a device other than the information processing server 2 and user terminal 3. [Explanation of symbols]
[0087] 1. Control System (Information Processing System) 2. Information Processing Server (Information Processing System) 3. User terminal (information processing system) 10. Server Information Processing Unit (Information Processing Unit) 13 Terminal Information Processing Unit (Information Processing Unit) 21 Unit Pages 30-way split screen (first user interface) Page 35 Preview Image (Preview Image) 53. Extracted Information List Screen (Fourth User Interface) 56. Screen for setting value processing rules (Third user interface) 59 Screen for setting deemed rules (5th user interface) 73. Screen for setting division conditions (second user interface)
Claims
1. A function that provides a first user interface that allows the user to specify any area from a preview image of a unit page, which is one of the unit pages that make up the target data in a file format that maintains the layout when printed, and which allows the user to specify any area of the unit page that is specified by the user. A function to provide a second user interface that allows setting division conditions using information belonging to a specified area, which is the area specified by the first user interface, on the aforementioned unit page, The system includes an information processing unit that has a function to divide the target data according to the division conditions set in the second user interface. An information processing system characterized by the following:
2. The aforementioned information processing unit, A function to extract information belonging to the specified area for each of the aforementioned unit pages as extracted information, The system includes a function to determine whether the division condition is met for each of the aforementioned unit pages using the extracted information, and to divide the target data based on the unit pages for which the division condition is met. The information processing system according to feature 1.
3. The aforementioned information processing unit, The system includes a function to provide a second user interface that allows setting the division condition for a unit page when the value of the extracted information in one unit page differs from the value of another unit page that is in a predetermined positional relationship with the first unit page. The information processing system according to feature 2.
4. The aforementioned information processing unit, The system provides a second user interface that allows specifying an arbitrary comparison value and setting a splitting condition for a given unit page if the value of the extracted information in that unit page has a predetermined relationship with the specified comparison value. The information processing system according to feature 2.
5. The aforementioned information processing unit, The function provides a third user interface that allows setting value processing rules, which are the rules for processing the values of the extracted information. The system includes a function to determine whether the division condition is met using the extracted information processed according to the value processing rule for each of the aforementioned unit pages. The information processing system according to any one of claims 2 to 4.
6. The aforementioned information processing unit, The third user interface provides a function that allows setting at least one of the following as value processing rules: a rule to replace a specific value in the extracted information with a predetermined value; a rule to convert the display format of the extracted information to a predetermined display format; a rule to extract the value of a specific part of the extracted information; and a rule to pad the value of the extracted information with digits in a predetermined manner. The information processing system according to feature 5.
7. The aforementioned information processing unit, The system includes a function to provide a fourth user interface in which the extracted information is displayed in a list for each unit page. The information processing system according to any one of claims 2 to 4.
8. The aforementioned information processing unit, A fifth user interface is provided that allows specifying any specific value, and a rule can be set to consider the value of the extracted information as the value of another unit page that is in a predetermined positional relationship with the first unit page, if the value of the extracted information in one unit page is the same as the specified specific value. The system includes a function to determine whether the division condition is met using the extracted information obtained by applying the deemed rule to each of the aforementioned unit pages. The information processing system according to any one of claims 2 to 4.
9. The aforementioned information processing unit, A function that provides the first user interface which allows specifying an area for each registered key item, The system includes a function that provides a second user interface that allows setting individual division conditions constituting the division conditions on a key item basis. The information processing system according to feature 1.
10. The aforementioned information processing unit, A function to extract information belonging to the specified area for each of the aforementioned key items for each of the aforementioned unit pages as extracted information, For each of the aforementioned unit pages, the extracted information is used to determine whether the individual splitting conditions are met for each key item, the splitting conditions are determined based on the status of the individual splitting conditions being met for each key item, and the target data is split based on the unit pages for which the splitting conditions are met. The information processing system according to feature 9.
11. The aforementioned information processing unit, The system provides a second user interface that allows specifying any key item and setting individual division conditions for a given unit page when the value of the extracted information for the specified key item on a given unit page differs from the value on another unit page that is in a predetermined positional relationship with that unit page. The information processing system according to feature 10.
12. The aforementioned information processing unit, The system provides a second user interface that allows specifying any key item and any comparison value, and that allows setting individual splitting conditions for a given unit page if the value of the extracted information for the specified key item in a given unit page has a predetermined relationship with the specified comparison value. The information processing system according to feature 10.
13. The aforementioned information processing unit, A third user interface is provided that allows setting value processing rules, which are rules for processing the values of the extracted information, for each key item. The system includes a function to determine whether the individual division conditions are met using the extracted information processed according to the value processing rules for each key item on each of the aforementioned unit pages. The information processing system according to any one of claims 10 to 12.
14. The aforementioned information processing unit, The third user interface provides a function that allows setting at least one of the following as value processing rules: a rule to replace a specific value in the extracted information with a predetermined value; a rule to convert the display format of the extracted information to a predetermined display format; a rule to extract the value of a specific part of the extracted information; and a rule to pad the value of the extracted information with digits in a predetermined manner. The information processing system according to feature 13.
15. The aforementioned information processing unit, The system includes a function to provide a fourth user interface in which the extracted information is displayed in a list for each of the aforementioned key items on each of the aforementioned unit pages. The information processing system according to any one of claims 10 to 12.
16. The aforementioned information processing unit, A fifth user interface is provided that allows specifying any key item and any specific value, and that a deeming rule can be set to consider the value of the extracted information as the value of another unit page that is in a predetermined positional relationship with the specified key item if the value of the extracted information of the specified key item on one unit page is the same as the specified specific value. The system includes a function to determine whether the division condition is met using the extracted information obtained by applying the deemed rule to each of the aforementioned unit pages. The information processing system according to any one of claims 10 to 12.
17. The aforementioned information processing unit, The function provides a sixth user interface that allows setting exclusion conditions, which are the conditions for pages to be excluded from the divided data, for each of the divided data generated by dividing the aforementioned target data. The system also includes a function to exclude pages from each of the divided data according to the exclusion conditions set in the sixth user interface. The information processing system according to feature 1.
18. The aforementioned information processing unit, A function to store past setting information indicating the specification of an area performed using the first user interface and the setting of the division conditions performed using the second user interface, in response to the user's instructions, The system includes a function that, when one of the stored past setting information is selected, automatically applies the specification of the area indicated by the selected past setting information and the setting of the division conditions. The information processing system according to feature 1.
19. The information processing system provides a first user interface that allows the user to specify an arbitrary area from a preview image of a unit page, which is one of the unit pages that constitute the target data in a file format that maintains the layout when printed. The information processing system provides a second user interface that can set division conditions using information belonging to a designated area which is an area specified by the first user interface in the unit page. The information processing system includes the step of dividing the target data according to the division conditions set in the second user interface. An information processing method characterized by the following:
20. It is a program executed by a computer in an information processing system. The aforementioned computer A function that provides a first user interface that allows the user to specify any area from a preview image of a unit page, which is one of the unit pages that make up the target data in a file format that maintains the layout when printed, and which allows the user to specify any area of the unit page that is specified by the user. A function to provide a second user interface that allows setting division conditions using information belonging to a specified area, which is the area specified by the first user interface, on the aforementioned unit page, This information processing unit has the function of dividing the target data according to the division conditions set in the second user interface. A program characterized by the following features.