GMP (Good Manufacturing Practice) file generation method and related product

By automatically generating a batch page with pre-constructed templates in GMP file generation, the problems of low efficiency and low accuracy of existing GMP files are solved, and an efficient and unified signed and approved process is achieved.

CN119720983APending Publication Date: 2025-03-28YISHENG INFORMATION TECHNOLOGY (SHENZHEN) CO LTD +1

Patent Information

Application Number
CN202411784789.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-06
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

The signing and approval efficiency of existing GMP files is low, and the signing and approval formats of different personnel are not uniform, resulting in low signing and approval accuracy.

Method used

Automatically generate GMP file sign-to-batch pages through pre-constructed templates to improve sign-to-batch efficiency and accuracy.

Benefits of technology

It realizes the automation of GMP file signing and parceling, reduces the printing and storage costs of paper documents, and improves the accuracy and consistency of signing and parceling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119720983A_ABST
    Figure CN119720983A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a medicine production quality management specification GMP file generation method and related products. The method comprises the following steps: obtaining a content page of a target GMP file drawn by a dragger by using a content template, metadata information of the target GMP file and approval information for the content page; obtaining an endorsement page template and a header and footer template; generating an endorsement page based on the approval information and the endorsement page template; based on the metadata information and the header and footer template, generating a header and a footer; and synthesizing the target GMP file based on the content page, the endorsement page, the page header and the page footer. According to the embodiment of the invention, the signing efficiency of the GMP file can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of document processing, and in particular to a method for generating a Good Manufacturing Practice (GMP) document for pharmaceutical production and related products. Background Art

[0002] Good Manufacturing Practice of Medical Products (GMP) is the basic principle of drug production and quality management, applicable to the entire process of drug preparation production and key processes in API production that affect the quality of finished products. Vigorously promoting GMP is to minimize contamination and cross-contamination in the drug production process and reduce the occurrence of various errors, which is an important measure to improve drug quality.

[0003] In line with GMP, the files generated during the production of pharmaceutical preparations are called GMP files or GMP documents. There will be a sign-and-approval page in the GMP file, and relevant personnel need to sign and approve it in the sign-and-approval page to generate the entire GMP file. However, the current signing and approval of GMP files mainly relies on printing the GMP files first, then manually signing and approving them, and then scanning and uploading them. The entire signing and approval efficiency is relatively low, and the signing and approval formats of different personnel are not unified, resulting in confusion and low accuracy. Summary of the invention

[0004] The embodiment of the present application provides a method for generating a GMP document for good manufacturing practices for pharmaceuticals and related products. Through a pre-constructed template, the signing and approval page of the GMP document can be automatically generated, thereby improving the efficiency and accuracy of the signing and approval of the GMP document.

[0005] In a first aspect, the present application provides a method for generating a GMP document for pharmaceutical production quality management specifications, including:

[0006] Obtaining a content page of a target GMP document drafted by a drafter using a content template, metadata information of the target GMP document, and approval information for the content page;

[0007] Get the signature page template and header and footer template;

[0008] Generate an approval page based on the approval information and the approval page template;

[0009] Generate a header and a footer based on the metadata information and the header and footer template;

[0010] The target GMP file is synthesized based on the content page, the endorsement page, the header and the footer.

[0011] In a second aspect, an embodiment of the present application provides a device for generating a drug production quality management specification GMP document, the device comprising: an acquisition unit and a processing unit;

[0012] The device comprises: an acquisition unit and a processing unit;

[0013] The acquisition unit is used to acquire the content page of the target GMP file drafted by the drafter using the content template, the metadata information of the target GMP file, and the approval information for the content page; acquire the signature page template and the header and footer template;

[0014] The processing unit is used to generate a review page based on the approval information and the review page template; generate a header and footer based on the metadata information and the header and footer template; and synthesize the target GMP file based on the content page, the review page, the header and the footer.

[0015] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory, wherein the processor is connected to the memory, the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the electronic device performs the method described in the first aspect.

[0016] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method described in the first aspect is implemented.

[0017] In a fifth aspect, an embodiment of the present application provides a computer program product, wherein the computer program product includes a computer program, and when the computer program is executed by a processor, the method described in the first aspect is implemented.

[0018] Implementing the embodiments of the present application has the following beneficial effects:

[0019] It can be seen that in the embodiment of the present application, the drafter can use the pre-built content template to edit the content of the GMP file, so as to obtain the content page of the GMP file. Then, the metadata information of the GMP file and the approval information of each approver for the content page are synchronously obtained, and the pre-built approval page template and header and footer template are used to generate the corresponding approval page, header and footer, respectively, and the target GMP file is synthesized based on the content page, the approval page, the header and the footer, that is, a complete GMP file is automatically synthesized. In this way, the user does not need to print out the GMP file, and the approval of the GMP file can be completed, which reduces the printing and storage costs of paper documents, improves the approval efficiency of the GMP file, and avoids the accuracy problems caused by the inconsistent approval formats of different personnel, thereby improving the accuracy of the approval, that is, improving the consistency and standardization of the GMP file generated at the end; moreover, the body content of the GMP file is drafted by the drafter using a unified content template, so that the format of the GMP file drafted by all people is the same, further ensuring the consistency and standardization of the GMP file. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0021] Figure 1 A schematic diagram of a GMP document management system provided in an embodiment of the present application;

[0022] Figure 2 A schematic diagram of a process for constructing a GMP document template provided in an embodiment of the present application;

[0023] Figure 3 A schematic diagram of a GMP document template provided in an embodiment of the present application;

[0024] Figure 4 A schematic diagram of a signature page template provided in an embodiment of the present application;

[0025] Figure 5 A flow chart of a content page template provided in an embodiment of the present application;

[0026] Figure 6 A schematic diagram of another GMP document template provided in an embodiment of the present application;

[0027] Figure 7 A schematic diagram of a header template provided in an embodiment of the present application;

[0028] Figure 8 A schematic diagram of a process for generating a GMP file provided in an embodiment of the present application;

[0029] Fig. 9 A schematic diagram of a GMP file generation device provided in an embodiment of the present application;

[0030] Fig.10 A schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0031] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0032] The terms "first", "second", "third" and "fourth" etc. in the specification and claims of the present application and the drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.

[0033] Reference to "embodiments" herein means that a particular feature, result, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0034] See also Figure 1 , Figure 1 A schematic diagram of a GMP file management system provided in an embodiment of the present application. The GMP file management system includes: a front-end device 10 and a GMP file generation device 20, wherein the front-end device 10 is installed with a browser which can provide a front-end web interface, and the GMP file generation device 20 can be understood as a back-end device.

[0035] Exemplarily, the drafter first fills in the metadata information of the target GMP file on the front-end web interface, and accordingly, the GMP file generation device 20 can obtain the metadata information of the target GMP file; when the approver approves the metadata information, the drafter can also use the content template to draft the content page of the target GMP file on the front-end web interface. Then, the drafter submits the drafted content page to the approver for approval on the front-end web interface; similarly, each approver can approve the content page on the front-end web interface. Then, the GMP file generation device 20 can obtain the approval information for the content page.

[0036] Finally, after the content page is approved, the GMP file generating device 20 can generate a target GMP file based on the metadata information, the approval information and the content page, that is, a GMP file that complies with the specification, that is, a standard GMP file.

[0037] Specifically, the GMP file generation device 20 obtains the approval page template and the header and footer template; generates the approval page based on the approval information and the approval page template; generates the header and footer based on the metadata information and the header and footer template; synthesizes the target GMP file based on the content page, the approval page, the header and the footer. In addition, the GMP file generation device 20 can return the target GMP file to the front-end device 10 so that the corresponding personnel can view and preview the target GMP file, so as to adjust and distribute the target GMP file.

[0038] It can be seen that in the embodiment of the present application, the drafter can use the pre-built content template to edit the content of the GMP file, so as to obtain the content page of the GMP file. Then, the metadata information of the GMP file and the approval information of each approver for the content page are synchronously obtained, and the pre-built approval page template and header and footer template are used to generate the corresponding approval page, header and footer, respectively, and the target GMP file is synthesized based on the content page, the approval page, the header and the footer, that is, a complete GMP file is automatically synthesized. In this way, the user does not need to print out the GMP file, and the approval of the GMP file can be completed, which reduces the printing and storage costs of paper documents, improves the approval efficiency of the GMP file, and avoids the accuracy problems caused by the inconsistent approval formats of different personnel, thereby improving the accuracy of the approval, that is, improving the consistency and standardization of the GMP file generated at the end; moreover, the body content of the GMP file is drafted by the drafter using a unified content template, so that the format of the GMP file drafted by all people is the same, further ensuring the consistency and standardization of the GMP file.

[0039] See also Figure 2 , Figure 2A flow chart of a method for constructing a GMP file template provided in an embodiment of the present application. The method is applied to the above-mentioned GMP file generation device. The method includes but is not limited to the following steps:

[0040] 201: Get the GMP file template uploaded by the user.

[0041] For example, before drafting a GMP document, the user may first upload a GMP document template so as to separate the templates required for each chapter in the standard GMP document.

[0042] For example, users can upload a GMP file template on the web interface of the front-end device.

[0043] 202: Segment the GMP file template to obtain the content template, the approval page template, and the header and footer templates.

[0044] Exemplarily, the content page, the approval page, the header and footer of the GMP document template are segmented to obtain the content template, the approval page template, and the header and footer template.

[0045] In one embodiment of the present application, before uploading the GMP file template, the user pre-embeds a split tag in the GMP file template to facilitate the segmentation of the GMP file template. Therefore, the GMP file generation device can read the content in the GMP file template, for example, the content in the GMP file template can be read through Apache POI, and the content can be identified to obtain the split tag in the GMP file template. Then the GMP file generation device determines the position of the split tag in the GMP file template, and splits the content before the position in the GMP file template into a signature page template, and splits the content after the position in the GMP file template into a content template. Optionally, the position of the split tag in the GMP file template can be represented by the XML tag position of the split tag in the GMP file template.

[0046] Optionally, the approval page template includes at least: an approval form and a title of the approval form, wherein the title of the approval form includes a Chinese title and an English title, and the approval form is used to record the approval information of the GMP document.

[0047] Optionally, the content template includes a table of contents template page and a chapter content template page, wherein the table of contents template page includes the directory names of multiple chapters (including Chinese and English names) and the subdirectory names under each directory (including Chinese and English names), and the chapter content template page includes the title names of multiple chapters (including Chinese and English names).

[0048] like Figure 3As shown in the figure, a split tag "{{split_tag}}" is embedded between the approval page and the content page of the GMP file template. After the split tag "{{split_tag}}" is identified, the position of the split tag "{{split_tag}}" in the GMP file template can be determined first. Then, the content before the position is split into the approval page template, so as to obtain the following Figure 4 The template for the endorsement page is shown in the figure. Figure 4 As shown in the figure, the approval page template includes an approval form and the Chinese and English titles of the approval form, namely, Prepare&Review&Approved. The approval form includes the approval level (item), department or position (Department or Role), name (name), signature (signature), and date (date) used to record the approver. The content after this position is divided into content templates, and the following is obtained: Figure 5 The content template shown. Figure 5 As shown, the content template includes the directory names of multiple chapters, namely 1. "Purpose"; 2. "Scope"; 3. "Definitions and Abbreviations"; 4. "Roles and Responsibilities"; 5. "Reference"; 6. "Procedure"; 6.1. "<Process Step 1><Process Step 01> ”; 6.2. “<Process Step 2><Process Step 02> ”; 6.3. “<Process Step 3><ProcessStep 03> ”; 7. “Appendixes and Templates”; 8. “Related Forms”; 9. “Related Documents”; 10. “Training Requirement”; 11. “Revision History”. Figure 5 As shown, the content template also includes the titles of multiple chapters, namely 1. "Purpose"; 2. "Scope".

[0049] In another embodiment of the present application, the GMP file generation device can segment the signature page and the content page by keyword recognition, so that the user can directly upload the GMP file template without pre-embedding the segmentation tags in the GMP file template, thereby reducing the difficulty for the user to construct the GMP file template.

[0050] For example, Figure 6If the GMP file template shown in the figure is used (the segmentation tag is not pre-inserted in the GMP file template), the GMP file generation device reads the contents in the GMP file template in sequence according to the order of the contents in the GMP file, and performs keyword extraction on the read contents to obtain keywords corresponding to the read contents. Then, when the recognized keyword is a preset keyword, the position of the keyword in the GMP file is determined. Similarly, the position may be the row position of the keyword in the GMP file. Then, the content before the position of the keyword is used as the signature page template, and the content of the row where the keyword is located and the content after the position of the keyword are used as the content template. Exemplarily, the preset keyword is "directory". When performing keyword recognition on the content in the GMP file template, if "directory" is recognized, the content before the "directory" is segmented into a signature page template, and the result is as follows. Figure 4 The signature page template shown in FIG. 1 is used, and the content of the line where "Directory" is located and the content after "Directory" are divided into content templates to obtain the following Figure 5 The content template shown.

[0051] Exemplarily, the above-mentioned approval page template also includes a plurality of content tags, each content tag is used to indicate the approval content that needs to be inserted at the position where the content tag is located.

[0052] Optionally, before segmenting the approval page template and the content template, the user pre-embeds the above-mentioned multiple content tags in the approval form. Figure 3 As shown, multiple content tags are pre-embedded in multiple cells of the approval form, namely: {{item_name}}, {{department_name}} / {{position_name}}, {{username}}, {{signature_img}}{{signature_text}} and {{signature_date}}, wherein the tag {{item_name}} indicates that the approval content inserted at the tag is the approval level of the approver, {{department_name}} / {{position_name}} indicates that the approval content inserted at the tag is the department where the approver is located or the position of the approver, {{username}} indicates that the approval content inserted at the tag is the name of the approver, {{signature_img}} indicates that the approval content inserted at the tag is the electronic signature image of the approver, {{signature_text}} indicates that the approval content inserted at the tag is the electronic signature of the approver, and {{signature_date}} indicates that the approval content inserted at the tag is the approval date of the approver. The signature page template segmented in this way contains the above-mentioned multiple content tags.

[0053] Optionally, the GMP file generating device can automatically insert content tags in the approval form by means of content recognition, so that the user does not need to pre-embed content tags in the approval form, thereby reducing the difficulty of the user constructing the GMP template.

[0054] For example, Figure 6 As shown, the user has not pre-inserted content tags in the approval form of the GMP file template. After the GMP file device divides the approval page template, it reads the content in the approval page template to obtain the approval form in the approval page template. Then, the rows in the approval form are obtained to obtain multiple rows; multiple cells in each row are obtained, and the type of each cell is identified to obtain a first type of cell, a second type of cell, and a third type of cell, wherein the first type of cell corresponds to the second type of cell one by one. Exemplarily, content extraction is performed on each cell in each row to determine the type of each cell in each row.

[0055] For example, through the Apache POI library, the approval table in the approval page template, as well as the first type of cells, the second type of cells, and the third type of cells are identified. Specifically, the approval page template is read through the XWPFDocument class in the Apache POI library, and then the getTables() method of the XWPFDocument class is used to obtain the approval table in the approval page template, and a <xwpftable>object, the <xwpftable>The object is the approval form; use the getRows() method of the XWPFTable object to get all the rows in the approval form and return a List <xwpftablerow>, where the List <xwpftablerow>Contains each row of the approval form. Traverse the List <xwpftablerow>For each object in the approval table, get each row in the approval table, use the getTableCells() method of XWPFTableRow to get all the cells in each row, and extract the content of each cell through the getParagraphs() method to determine the type of each cell.

[0056] Exemplarily, if content is extracted from a cell, it is determined whether the content contains a preset character. If not, the cell is determined to be a first-class cell; if it contains a preset character, the cell is determined to be a third-class cell; if no content is extracted from the cell, the cell is determined to be a second-class cell, that is, the second-class cell is a blank cell. The preset character is ":".

[0057] For the sake of distinction, this application refers to the row where the second type of cells are located as a description row.

[0058] Optionally, for the second type of cells, the text in the first type of cells corresponding to each second type of cell is obtained, and based on the text in the first type of cells, the content tag corresponding to the second type of cell is determined, wherein the approval content indicated by the content tag is the same as the approval content indicated by the text in the first type of cells, and the content tag is inserted in the second type of cells, so as to insert the corresponding content tags in multiple second type of cells respectively, that is, the corresponding first type of cells can be regarded as table headers, and the corresponding second type of cells can be regarded as table bodies corresponding to the table headers. Optionally, for the third type of cells, the text in the third type of cells is extracted, and the remaining content in the text except for the preset characters is obtained, and based on the remaining content, the content tag corresponding to the remaining content is determined, and the content tag is inserted after the preset characters. For the purpose of unified description, this application also refers to the signature page template with multiple content tags inserted as the signature page template.

[0059] For example, if Figure 6 As shown, the approval page part is identified, and the first type of cells, the second type of cells and the third type of cells can be identified. Then, based on the text in the first type of cells, the content label corresponding to the second type of cells in the first type of cells is determined. For example, for the text "Item", the content label corresponding to the text is determined to be {item_name}}, and the content label is inserted into the second type of cells to indicate the approval level of the approver inserted in the second type of cells; for the text "Department or Position Department or Role", the corresponding content label is determined to be {{department_name}} / {{position_name}}, for the text "Name", the corresponding content label is determined to be {{username}}, for the text "Signature", the corresponding content label is determined to be {{signature_img}}{{signature_text}}, and for the text "Date", the corresponding content label is determined to be {{signature_date}}, so that the content label corresponding to each second type of cell can be determined. For the third type of cell, the corresponding content tag can be determined to be {{effect_date}} based on the remaining content in the third type of cell, i.e. "Effective Date". In this way, the content tag corresponding to the second type of cell and the content tag corresponding to the third type of cell are inserted into the second type of cell and the third type of cell respectively, so as to obtain the following Figure 4 The endorsement page template shown.

[0060] In one embodiment of the present application, the content after the position tag in the GMP file template is directly segmented into a content template, that is, the page number after the table of contents in the GMP file template is retained in the content template. It can be understood that the page number is the page number of the table of contents in the GMP file template. The reason why the page number after the table of contents can be retained is that after the target GMP file is synthesized, the page number after the table of contents will be automatically overwritten according to the actual page number corresponding to each chapter when the target GMP file is opened. Therefore, there is no need to adjust the page number after the table of contents in the GMP file template to segment the content template, thereby improving the efficiency of content template segmentation. For example, Figure 3 The content after the split tag "{{split_tag}}" shown in the figure can be split to obtain the following Figure 5 The content template described.

[0061] In one embodiment of the present application, in order to ensure that the page numbers corresponding to the table of contents in the synthesized target GMP file are correct, the chapter page number tags can be embedded after the table of contents of the generated content template, so that when the target GMP file is displayed later, the actual page numbers corresponding to each table of contents can be inserted through the chapter page number tags.

[0062] Therefore, the content template includes a table of contents page, which includes multiple table of contents. A corresponding chapter page number tag is embedded after each table of contents. The chapter page number tag is used to indicate the page number of the chapter indicated by the table of contents inserted at the chapter page number tag in the GMP file, that is, the actual page number.

[0063] Optionally, when uploading a GMP file template, the user may insert chapter page number labels corresponding to each chapter directory in the GMP file template in advance, so that after the GMP file template is segmented, each chapter directory in the segmented content template will correspond to a chapter page number label.

[0064] Alternatively, if Figure 6 As shown, when the user uploads the GMP file template, there is no need to insert the chapter page number label corresponding to each chapter directory in the GMP file template. The GMP file generation device can obtain each chapter directory by identifying the content of the directory page in the content template, and insert a chapter page number label at the end of each chapter directory.

[0065] Optionally, the chapter page number tag can be: page_no.

[0066] It should be noted that the chapter page number tags are embedded after the chapter directory of the content template, so that the synthesized target GMP file will also contain chapter page number tags. When the user opens the target GMP file, it will be recognized that the target GMP file contains chapter page number tags. Therefore, in response to the chapter page number tags, the actual page number corresponding to each chapter is determined, and the corresponding chapter page number tags are replaced with the actual page number corresponding to each chapter, thereby ensuring that the page numbers corresponding to the chapter directory in the displayed target GMP file are correct.

[0067] Further, the header content and footer content in the GMP file template are extracted to obtain the header and footer template. Exemplarily, the header content and footer content are read from the GMP file template, for example, the header content and footer content in the GMP file template can be read through Apache POI; then the header content and footer content are copied to a blank document to obtain the header and footer content.

[0068] In one embodiment of the present application, the header content portion of the header and footer template includes a metadata table, wherein the metadata table is used to record the metadata information of the GMP file. The metadata table includes a first-class cell and a second-class cell, and each first-class cell corresponds to a second-class cell one-to-one. The first-class cell can be understood as a table header, and the second-class cell can be understood as a title. A metadata tag is inserted into each second-class cell, and the metadata tag is used to indicate that the metadata indicated by the first-class cell corresponding to the second-class cell is inserted at the metadata tag.

[0069] Exemplarily, when constructing a GMP file template, the user may insert metadata tags in the metadata table in advance, so that the metadata table in the header content of the segmented header and footer template includes a plurality of metadata tags.

[0070] For example, if Figure 3 As shown in the figure, the contents of the first type of cells are "Document Name", "Document No", and "Document Version". Correspondingly, the metadata tags pre-inserted into the second type of cells corresponding to the first type of cells are "{{document_cn_name}}{{document_en_name}}", {{document_no}}, and {{document_version_no}}. In this way, the following can be segmented: Figure 7 The header template shown. It should be noted that, since the document software will automatically modify the page number and total number of pages in the header when the synthesized file is opened, there is no need to insert a metadata tag in the second cell corresponding to the first type of cell corresponding to "Page number Page", and the original content in the header can be retained.

[0071] Exemplarily, the user does not need to pre-insert metadata tags in the header content of the GMP file template. The GMP file generation device can automatically fill in the metadata tags in the second type of cells. The way in which the GMP file generation device automatically fills in metadata tags is similar to the above-mentioned way of automatically filling in content tags, and will not be described again.

[0072] Finally, the signature page template, content template, header and footer template are stored in their respective corresponding locations to complete the template construction.

[0073] The following describes in detail the process of generating a complete GMP file for the user, combining the signature page template, content template, header and footer template constructed above.

[0074] See also Figure 8 , Figure 8 A flow chart of a GMP file generation method provided in an embodiment of the present application. The method is applied to the above-mentioned GMP file generation device. The method includes but is not limited to the following steps:

[0075] 801: Obtaining a content page of a target GMP document drafted by a drafter using a content template, metadata information of the target GMP document, and approval information for the content page.

[0076] First of all, before drafting the content page, the drafter needs to fill in the metadata information of the target GMP file on the GMP file management system. For example, a metadata information filling form is displayed on the web interface of the GMP file relationship, and the drafter can fill in the metadata information of the GMP file in the metadata information filling form. In this way, the GMP file generation device can obtain the metadata information of the GMP file through the metadata information filling form.

[0077] Optionally, the metadata information includes, but is not limited to: the file name of the target GMP file, the file number of the target GMP file, the file version number of the target GMP file, and the basic information of the drafter, wherein the basic information includes the department where the drafter is located, the position of the drafter, the drafting time, and the like.

[0078] Then, after the drafter has filled in the metadata information, he / she will submit the metadata information to the approver for approval in the GMP document management system. Accordingly, the approver will approve the metadata information in the GMP document management system.

[0079] Further, when the metadata information is approved, the drafter can draft the content of the target GMP file. Optionally, the drafter can use the above-mentioned content template to draft the content of the target GMP file online on the GMP file management system. For example, the GMP file management system can display the content template on the front-end web interface, then correspondingly, the drafter can use the content template to edit the content of the target GMP file, generate the content page of the target GMP file, and submit the drafted content page of the target GMP file to the GMP file generation device. Optionally, the drafter can also use the above-mentioned template to draft the content of the target GMP file offline. For example, the drafter downloads the above-mentioned content template from the GMP file generation device, uses the downloaded content template to edit the content of the target GMP file offline, obtains the content page of the target GMP file, and then uploads the content page of the target GMP file edited offline to the GMP file generation device.

[0080] Furthermore, after the drafter submits the content page of the target GMP file in the GMP file management system, the GMP file generation device will transfer the content page of the target GMP file to each approver for approval. Accordingly, each approver can approve the content page on the GMP file generation system. Accordingly, the GMP file generation device can obtain the approval information of each approver for the content page.

[0081] The approval information includes, but is not limited to, the approval level of each approver, the department or position of the approver, the name of the approver, the electronic signature of the approver, the electronic image signature of the approver, and the approval date. Each approver also includes the drafter, which is equivalent to treating the drafter as an approver of the target GMP document. Correspondingly, the drafter has the lowest approval level.

[0082] 802: Get the signature page template and header and footer templates.

[0083] Exemplarily, the signature page template and the header and footer templates are loaded from corresponding storage locations through Apache POI.

[0084] 803: Generate an approval page based on the approval information and the approval page template.

[0085] Exemplarily, if there are multiple levels of approval on the content page of the target GMP document, and each level of approval includes one or more approvers, the approval information includes the approval information of each approver in the multiple levels of approval, and the approval information of each approver includes multiple approval contents. It is understood that the multiple approval contents of each approver include, but are not limited to: the approval level, department or position, name, electronic signature, electronic signature image, and approval time of each approver.

[0086] Exemplarily, based on the approval level and approval time, the approval order of the approvers in the multi-level approval is determined; if there are multiple approvers in the same level of approval, the approval order of the approver with an earlier approval time is lower than that of the approver with a later approval time, that is, the approval level of the approver who approves first is lower than that of the approver who approves later; in order of the approval order from early to late, the multiple approval contents in the approval information of each approver are filled into the approval page template in turn to obtain the approval page.

[0087] Based on the above construction of the approval page template, it can be known that the approval page template includes a description line, and the description line includes multiple content tags, each of which is used to indicate an approval content. Therefore, based on the number of approvers in the multi-level approval, the description line is copied to obtain multiple approval lines, the number of the multiple approval lines is the same as the number of the multiple approvers, and each approval line includes the multiple content tags. For example, if there are 5 approvers in the multi-level approval, the approval line is copied 5 times to obtain 5 approval lines, and the 5 copied approval lines are used to replace the original template line. Then, based on the approval order, the approval line corresponding to each approver is determined, and based on the approval content indicated by each content tag in the approval line corresponding to each approver, the multiple approval contents of the approver are used to replace the corresponding content tags respectively, so as to fill the multiple approval contents of each approver into the approval line corresponding to each approver, and obtain the approval page.

[0088] 804: Generate a header and a footer based on the metadata information and the header and footer template.

[0089] Exemplarily, the header content and the footer content in the header and footer template are obtained; then, the fields in the header content that need to be filled with content and the fields in the footer content that need to be filled are determined, and the metadata corresponding to the fields in the header content that need to be filled with content and the metadata corresponding to the fields in the footer content that need to be filled are respectively obtained from the metadata information, and the corresponding metadata is filled into the header content to generate a header, and the corresponding metadata is filled into the footer to generate a footer.

[0090] It can be seen that by storing the header content and the footer content in a template, one template can be read, that is, the header content and the footer content can be obtained at the same time, thereby improving the generation efficiency of the GMP file.

[0091] Specifically, the header content of the header and footer template includes a metadata table. For each metadata tag in the metadata table, the metadata corresponding to the metadata tag is obtained from the metadata information using the content indicated by the metadata tag, and the metadata tag is replaced with the metadata to generate a header.

[0092] 805: Synthesize a target GMP file based on the content page, the approval page, the header, and the footer.

[0093] Exemplarily, the starting position in the content page is determined, and a position tag is added to the starting position to facilitate the insertion of the signature page through the position tag. For example, the starting cursor position of the first line of text in the content page is obtained, wherein the starting cursor position can be the line number of the first line of text; the starting cursor position of the first table in the content page is obtained, and similarly, the starting cursor position of the first table can also be the line number of the header of the first table. Then, the starting cursor position of the first line of text and the starting cursor position of the first table, whichever is closest to the front, is used as the starting position of the content page, and a position tag is added to the starting position. Optionally, the position tag can be {{embed_tag}}.

[0094] Furthermore, the signature page is inserted into the position tag, and the position tag is replaced to obtain the first GMP file. Then, the original header and the original footer in the first GMP file are deleted to obtain the second GMP file, and the header and the footer are respectively inserted into each page of the second GMP file to obtain the third GMP file.

[0095] It should be noted that, by inserting a location tag in the content page, after the signature and approval page is synthesized, the location tag in the content page can be replaced. In this way, the generation of the content page and the synthesis of the signature and approval page will not interfere with each other. Therefore, two threads can be used to be responsible for the generation of the content page and the synthesis of the signature and approval page respectively. Therefore, the content page and the signature and approval page can be synthesized in a multi-threaded manner, thereby improving the generation efficiency of the GMP file.

[0096] Finally, the third GMP file is converted into a target GMP file. For example, the format of the third GMP file is converted from docx format to pdf format to obtain the target GMP file.

[0097] In one embodiment of the present application, before the third GMP file is formatted, the page number corresponding to each catalog in the catalog page of the content page of the third GMP file is corrected to obtain a fourth GMP file. Specifically, the page number corresponding to each catalog of the third GMP file and the actual page number of each chapter in the third GMP file are obtained; if the page number corresponding to each catalog of the third GMP file is different from the corresponding actual page number, the page number corresponding to each catalog of the third GMP file is modified to the actual page number corresponding to each chapter, so as to correct the page number corresponding to each catalog in the catalog page of the content page of the third GMP file, and obtain the fourth GMP file. Then, the fourth GMP file is formatted to obtain the target GMP file.

[0098] It should be explained that the reason for page number correction is that the page number corresponding to each chapter directory in the segmented content template is the page number of each chapter in the GMP file template, not the actual page number of each chapter in the target GMP file, which will change based on the content edited by the drafter. However, when drafting the content of the target GMP file, the drafter may forget to modify the page number, or forget to consider inserting the signature page before modifying the page number, which will cause the page number corresponding to each chapter directory in the content page to be wrong, and thus cause the page number corresponding to each chapter directory in the third GMP file to be wrong, so the page number needs to be corrected to ensure that the page number corresponding to each chapter directory in the best generated target GMP file is correct, thereby ensuring the accuracy of the GMP file.

[0099] Furthermore, after obtaining the target GMP file, the target GMP file may be encrypted.

[0100] It can be seen that in the embodiment of the present application, the drafter can use the pre-built content template to edit the content of the GMP file, so as to obtain the content page of the GMP file. Then, the metadata information of the GMP file and the approval information of each approver for the content page are synchronously obtained, and the pre-built approval page template and header and footer template are used to generate the corresponding approval page, header and footer, respectively, and the target GMP file is synthesized based on the content page, the approval page, the header and the footer, that is, a complete GMP file is automatically synthesized. In this way, the user does not need to print out the GMP file, and the approval of the GMP file can be completed, which reduces the printing and storage costs of paper documents, improves the approval efficiency of the GMP file, and avoids the accuracy problems caused by the inconsistent approval formats of different personnel, thereby improving the accuracy of the approval, that is, improving the consistency and standardization of the GMP file generated at the end; moreover, the body content of the GMP file is drafted by the drafter using a unified content template, so that the format of the GMP file drafted by all people is the same, further ensuring the consistency and standardization of the GMP file.

[0101] See also Fig. 9 , Fig. 9 A schematic diagram of a GMP file generation device provided in an embodiment of the present application. The GMP file generation device 900 includes: an acquisition unit 901 and a processing unit 902, wherein:

[0102] The acquisition unit 901 is used to acquire the content page of the target GMP file drafted by the drafter using the content template, the metadata information of the target GMP file, and the approval information for the content page; acquire the signature page template and the header and footer template;

[0103] Processing unit 902 is used to generate a review page based on the approval information and the review page template; generate a header and footer based on the metadata information and the header and footer template; and synthesize the target GMP file based on the content page, the review page, the header and the footer.

[0104] In terms of synthesizing the target GMP file based on the content page, the endorsement page, the header and the footer, the processing unit 902 is specifically configured to:

[0105] Determining a starting position in the content page;

[0106] Adding a position tag at the starting position;

[0107] Inserting the endorsement page into the position tag and replacing the position tag to obtain a first GMP file;

[0108] Deleting the original header and the original footer in the first GMP file to obtain a second GMP file;

[0109] Inserting the header and the footer into each page of the second GMP file to obtain a third GMP file;

[0110] The third GMP file is formatted to obtain the target GMP file.

[0111] In one embodiment of the present application, in determining the starting position in the content page, the processing unit 902 is specifically configured to:

[0112] Get the XML tag position of the first line of text in the content page;

[0113] Get the XML tag position of the first table in the content page;

[0114] The frontmost XML tag position among the XML tag position of the first line of text and the XML tag position of the first table is used as the starting position of the content page.

[0115] In one embodiment of the present application, there are multiple levels of approval for the content page of the target GMP file, and each level of approval includes one or more approvers, then the approval information includes the approval information of each approver in the multiple levels of approval, and the approval information of each approver includes multiple approval contents; in terms of generating the approval page based on the approval information and the approval page template, the processing unit 902 is specifically used to:

[0116] Based on the approval level and approval time, determining the approval order of the approvers in the multi-level approval, if there are multiple approvers in the same level of approval, the approval order of the approver with an earlier approval time is lower than that of the approver with a later approval time;

[0117] According to the approval sequence from earliest to latest, multiple approval contents in the approval information of each approver are sequentially filled into the approval page template to obtain the approval page.

[0118] In one embodiment of the present application, the approval page template includes an approval form, the approval form includes a description line, the description line includes multiple content tags, each content tag is used to indicate an approval content; in the order of approval order from early to late, multiple approval contents in the approval information of each approver are sequentially filled into the approval page template to obtain the approval page, the processing unit 902 is specifically used to:

[0119] Based on the number of approvers in the multi-level approval, the description line is copied to obtain a plurality of approval lines, the number of the plurality of approval lines is the same as the number of the plurality of approvers, and each approval line includes the plurality of content tags;

[0120] Based on the approval order, determine the approval line corresponding to each approver;

[0121] Based on the approval content indicated by each content tag in the approval row corresponding to each approver, the corresponding content tags are replaced respectively with the multiple approval contents of the approver, so as to fill the multiple approval contents of each approver into the approval row corresponding to each approver, and obtain the approval page.

[0122] In one embodiment of the present application, the processing unit 902 is further configured to:

[0123] Get the GMP file template uploaded by the user;

[0124] The GMP file template is segmented to obtain the content template, the approval page template and the header and footer templates.

[0125] In one embodiment of the present application, in terms of segmenting the GMP file template to obtain the content template, the endorsement page template, and the header and footer template, the processing unit 902 is specifically configured to:

[0126] Identifying a segmentation tag in the GMP file template;

[0127] Splitting the page before the split tag in the GMP file template into the approval page template, and splitting the page after the split tag in the GMP file template into the content template;

[0128] The header content and footer content in the GMP file template are extracted to obtain the header and footer template.

[0129] See also Fig.10 , Fig.10 A schematic diagram of an electronic device provided in an embodiment of the present application. Fig.10 As shown, the electronic device 1000 includes a transceiver 1001, a processor 1002 and a memory 1003. They are connected via a bus 1004. The memory 1003 is used to store computer programs and data, and can transmit the data stored in the memory 1003 to the processor 1002.

[0130] The processor 1002 is used to read the computer program in the memory 1003 and perform the following operations:

[0131] Obtain the content page of the target GMP document drafted by the drafter using the content template, metadata information of the target GMP document, and approval information for the content page; obtain the signature page template and the header and footer template;

[0132] Generate an approval page based on the approval information and the approval page template; generate a header and footer based on the metadata information and the header and footer template; synthesize the target GMP file based on the content page, the approval page, the header and the footer.

[0133] Specifically, the transceiver 1001 may be Fig. 9 The acquisition unit 901 of the GMP file generation device 900 of the embodiment described above, the processor 1002 may be Fig. 9 The processing unit 902 of the GMP file generating device 900 of the described embodiment will not be described again.

[0134] It should be understood that the electronic devices in this application may include smart phones (such as Android phones, iOS phones, Windows Phone phones, etc.), tablet computers, PDAs, laptops, mobile Internet devices MID (Mobile Internet Devices, referred to as: MID) or wearable devices, etc. The above electronic devices are only examples, not exhaustive, and include but are not limited to the above electronic devices. In practical applications, the above electronic devices may also include: smart vehicle terminals, computer equipment, etc.

[0135] The GMP file generation device of the present application may be a server, and the server may be a cloud computing server, a content delivery network (CDN) server, a network time protocol (NTP), a domain name resolution system (DNS) server, and other various types of servers. The above servers are only examples, not exhaustive, and include but are not limited to the above servers.

[0136] An embodiment of the present application also provides a computer-readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement part or all of the steps of any method for generating a pharmaceutical production quality management standard GMP document as recorded in the above method embodiments.

[0137] An embodiment of the present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute part or all of the steps of any one of the methods for generating a pharmaceutical production quality management standard GMP document as recorded in the above method embodiments.

[0138] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present application.

[0139] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0140] In the several embodiments provided in the present application, it should be understood that the disclosed device can be implemented in other ways. For example, the device embodiments described above are only schematic, such as the division of the units, which is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the device or unit can be electrical or other forms.

[0141] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0142] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of a software program module.

[0143] If the integrated unit is implemented in the form of a software program module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a memory, including a number of instructions to enable a computer device (which can be a personal computer, server or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned memory includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or CD-ROM and other media that can store program codes.

[0144] A person skilled in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable memory, and the memory can include: a flash drive, a read-only memory (English: Read-Only Memory, abbreviated as: ROM), a random access memory (English: Random Access Memory, abbreviated as: RAM), a magnetic disk or an optical disk, etc.

[0145] The embodiments of the present application are introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core idea of ​​the present application. At the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.< / xwpftablerow> < / xwpftablerow> < / xwpftablerow> < / xwpftable> < / xwpftable>

Claims

1. A method for generating a drug production quality management specification GMP document, characterized in that: include: Obtaining a content page of a target GMP document drafted by a drafter using a content template, metadata information of the target GMP document, and approval information for the content page; Get the signature page template and header and footer template; Generate an approval page based on the approval information and the approval page template; Generate a header and a footer based on the metadata information and the header and footer template; The target GMP file is synthesized based on the content page, the endorsement page, the header and the footer.

2. The method according to claim 1, characterized in that The synthesizing the target GMP file based on the content page, the endorsement page, the header and the footer includes: Determining a starting position in the content page; Adding a position tag at the starting position; Inserting the endorsement page into the position tag and replacing the position tag to obtain a first GMP file; Deleting the original header and the original footer in the first GMP file to obtain a second GMP file; Inserting the header and the footer into each page of the second GMP file to obtain a third GMP file; The third GMP file is formatted to obtain the target GMP file.

3. The method according to claim 2, characterized in that Determining the starting position in the content page includes: Get the XML tag position of the first line of text in the content page; Get the XML tag position of the first table in the content page; The frontmost XML tag position among the XML tag position of the first line of text and the XML tag position of the first table is used as the starting position of the content page.

4. The method according to any one of claims 1 to 3, characterized in that: If there are multiple levels of approval on the content page of the target GMP document, and each level of approval includes one or more approvers, the approval information includes the approval information of each approver in the multiple levels of approval, and the approval information of each approver includes multiple approval contents; The step of generating the approval page based on the approval information and the approval page template includes: Based on the approval level and approval time, determining the approval order of the approvers in the multi-level approval, if there are multiple approvers in the same level of approval, the approval order of the approver with an earlier approval time is lower than that of the approver with a later approval time; According to the approval sequence from earliest to latest, multiple approval contents in the approval information of each approver are sequentially filled into the approval page template to obtain the approval page.

5. The method according to claim 4, characterized in that The approval page template includes an approval form, the approval form includes a description line, the description line includes multiple content tags, each content tag is used to indicate an approval content; the approval page template is filled with multiple approval contents in the approval information of each approver in order from the earliest to the latest approval order, and the approval page is obtained, including: Based on the number of approvers in the multi-level approval, the description line is copied to obtain a plurality of approval lines, the number of the plurality of approval lines is the same as the number of the plurality of approvers, and each approval line includes the plurality of content tags; Based on the approval order, determine the approval line corresponding to each approver; Based on the approval content indicated by each content tag in the approval row corresponding to each approver, the corresponding content tags are replaced respectively with the multiple approval contents of the approver, so as to fill the multiple approval contents of each approver into the approval row corresponding to each approver, and obtain the approval page.

6. The method according to any one of claims 1 to 5, characterized in that: The method further comprises: Get the GMP file template uploaded by the user; The GMP file template is segmented to obtain the content template, the approval page template and the header and footer templates.

7. The method according to claim 6, characterized in that The step of segmenting the GMP file template to obtain the content template, the approval page template, and the header and footer templates includes: Identifying a segmentation tag in the GMP file template; Splitting the page before the split tag in the GMP file template into the approval page template, and splitting the page after the split tag in the GMP file template into the content template; The header content and footer content in the GMP file template are extracted to obtain the header and footer template.

8. A device for generating GMP documents for pharmaceutical production quality management regulations, characterized in that: The device comprises: an acquisition unit and a processing unit; The acquisition unit is used to acquire the content page of the target GMP file drafted by the drafter using the content template, the metadata information of the target GMP file, and the approval information for the content page; acquire the signature page template and the header and footer template; The processing unit is used to generate a review page based on the approval information and the review page template; generate a header and footer based on the metadata information and the header and footer template; and synthesize the target GMP file based on the content page, the review page, the header and the footer.

9. An electronic device, characterized in that: include: A processor and a memory, the processor is connected to the memory, the memory is used to store a computer program, and the processor is used to execute the computer program stored in the memory, so that the electronic device executes the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Conference sign-in method, system and equipment based on electronic signature and storage medium

    CN115620413A

  • General electronic signature method and device for Word file and electronic equipment

    CN117034890A

  • Word document header data updating method and device and server

    CN117610503A

  • electronic DOCUMENT MANAGEMENT SYSTEM OF THE PHARMACEUTICAL QUALITY SYSTEM

    RU2016128717A

Cited By

  • Calibration-based PDF (Portable Document Format) document page number range matching method and system

    CN120873174A