1.Purpose
Our clients need the ability to perform certain tasks in PACS that initiated by mass scanning documents with barcode information, and then processing those documents in some way. Typically, this will involve determining a document type by scanning for a barcode within the document, determining the property to which the document belongs, and then associating the document with the property as a pacs_image. Additional processing may accompany specific types of documents.
2.Schema
1.1.1 [document_type]
Column | Type | Description |
document_type_cd | varchar(20) NOT NULL, PK | Document Type Code |
description | varchar(50) NOT NULL | Description |
image_type | char(10)
FK [image_type] |
Image Type |
rect_type | char(10)
FK [rect_type] |
Record Type |
sub_type | char(10)
FK [sub_type] |
Sub Type |
Table 3.1‑1: [document_type] Database Table Definition
1.1.2 [import_document_run]
Column | Type | Description |
import_document_run_id | int NOT NULL, PK | Run ID |
status | varchar(10) NOT NULL default(‘N’) | Status
S = Scanning I = Imported P = Processing C = Completed |
document_types | varchar(255) | Document Types |
imported_date | datetime NOT NULL | Imported Date |
imported_user_id | int NULL
FK to [pacs_user] |
Imported User ID |
processed_date | datetime NULL | Processed Date |
processed_user_id | int NULL
FK to [pacs_user] |
Processed User ID |
import_path | varchar(255) NULL | Import Path |
record_count | int NOT NULL default(0) | Imported Record Count |
processed_count | int NOT NULL default(0) | Processed Count |
error_count | int NOT NULL default(0) | Error Count |
Table 3.1‑2: [import_document_run] Database Table Definition
1.1.3 [import_document_run_record]
Column | Type | Description |
import_document_run_record_id | int NOT NULL, PK | Run Record ID |
import_document_run_id | int NOT NULL
FK to [import_document_run] |
Run ID |
seq_num | int NOT NULL | Sequence Number |
document_name | varchar(255) NULL | Document File Name |
document_type_cd | varchar(15) NULL | Document Type Code from the barcode scanned in the document. |
document_year | numeric(4, 0) NULL | Year from the barcode scanned in the document. |
prop_id | int NULL | Property ID from the barcode scanned in the document. |
processed | bit NOT NULL default(0) | Processed Flag |
status_message | varchar(100) NULL | Status message for the document. |
A record will be added to the [meta_code_table] table which drives which codes are displayed in the Code Maintenance view.
- table_name = ‘document_type’
- maintenance_name = ‘Document Type’
- code_column_name = ‘document_type_cd’
- desc_column_name = ‘description’
- category = ‘General’
- maint_form = <Qualified Name of the Maintenance Form>
- is_desc_editable = 1
- primary_keys = ‘document_type_cd’
- desc_not_required = 0
- code_is_id = 0
- is_year_based = 0
3.User Rights Needed
The following user rights are needed in order to mass scan documents:
- Code Maintenance > General > Document Type
- Activities > Document Import
4.Adding a Document Type
Purpose
Creating a Document Type
Procedure
To create a Document Type, user will browse to:
- Tools > Code Maintenance > General > Document Type
- Note: These will all be system-defined codes and the user will only be able to make some modifications to them.
- The fields available in the Document Type dialog is:
- Document Type Code.
- This field will not be editable.
- This field will be stored in [document_type].document_type_cd.
- Description
- This field will allow the user to enter the Document Type Description.
- This field will be required.
- This field will allow up to 50 alpha-numeric characters.
- This field will be stored in [document_type].description.
- Image Type
- This field will allow the user to select the Image Type that will be associated to the Document Type.
- This field will be required.
- This field will be populated from the Image Type code.
- Only rows from the [image_type] table that are associated to picture types that support multi-page documents will be available for selection.
- [image_type].picture_type in (‘TIF’, ‘PDF’)
- The items will be displayed in the following format: Code (Description).
- Only rows from the [image_type] table that are associated to picture types that support multi-page documents will be available for selection.
- This field will be stored in [document_type].image_type.
- Record Type
- This field will allow the user to select the Record Type that will be associated to the Document Type.
- This field will be required.
- This field will be empty until the user selects an Image Type.
- This field will be populated from the Record Type code.
- Only rows from the [rect_type] table that have the selected Image Type will be available for selection.
- The items will be displayed in the following format: Code (Description).
- This field will be stored in [document_type].rect_type.
- Sub-type
- This field will allow the user to select the Sub-type that will be associated to the Document Type.
- This field will be required.
- This field will be empty until the user selects a Record Type.
- This field will be populated from the Sub-type code.
- Only rows from the [sub_type] table that have the selected Image Type and the selected Record Type will be available for selection.
- The items will be displayed in the following format: Code (Description).
- This field will be stored in [document_type].sub_type.
- Document Type Code.
5.Document Import Dialog
Purpose
The Document Import Run Listing will allow the user to maintain a list of runs.
Procedure
User will browse to PACS Menu > Activities > Forms Processing > Import Documents
From this view, the user may initiate a new run by either of the following actions:
- Import Button – This toolstrip button will invoke a dialog to prompt the user for a folder containing pre-existing image files to import and process
- Scan Button – This toolstrip button will invoke a dialog to prompt the user for a folder where scanned documents should be stored for subsequent processing, and then initiate the mass document scanning process.
This grid rendered will contain a list of all the import runs in the system, and will allow the user to sort and/or filter the content of the grid for the indicated columns by selecting the appropriate icon in the column header.
Toolstrip Commands
- Import
- Clicking this button will open the Document Import Dialog.
- This button will always be enabled.
- his button will allow the user to start a new import run.
- Scan
- This button will allow the user to start a new import run.
- Clicking this button will open the Document Scan Dialog.
- This button will only be enabled if a scanner is detected and configured for use with the PAC application.
Process
-
- This button will allow the user to Process or re-process the currently selected run.
- This command will initiate the processing of images in the folder associated with the run described in detail in Section 6.
- The command will be enabled only if the Status for the selected row is “Imported” or “Completed”. If the status is “Scanning” or “Processing”, the button will be disabled.
- Details Button
- This button will always be enabled.
- Clicking the button will invoke the Document Scan/Import Run Details Dialog.
6.Importing Document
Purpose
User will import documents
Procedure
The user will access this dialog through the Scan tool strip button in the Document Import Run Listing
- Import Path
- This field will allow the user to select the location of the folder that contains the files to be imported.
- This field will only allow selection of existing folders, both locally or using a UNC path.
- Import Button
- The application will check if any files within the folder exist with the following extensions: PDF, JPG, PNG, TIFF, TIF
- The system will attempt to open the file as an image file.
- The file will be processed to find a barcode. The barcode text will have the following format: *{year}%{prop_id}%{document_type_cd}*
- For example, a DR-499 document in 2019 for property 12345 would have a barcode with the following text: *2019%12345%DR-499*
- The application will check if any files within the folder exist with the following extensions: PDF, JPG, PNG, TIFF, TIF
- When the process is complete:
- The process will update the [import_document_run] records:
- record_count = count of the number of documents in the folder
- error_count = count of number of errors that occurred.
- status = ‘Imported’
- The process will update the [import_document_run] records:
7.Processing Document
Purpose
Once data is imported, User will process the file.
Procedure
- User will browse to PACS Menu > Activities > Forms Processing > Import Documents
- User highlight line item in grid and click Process
- When the user clicks the “Process” button on the Document Scan/Import Run Listing View the application will perform the following process. Note that images do not affect values for a property, so this process can be run whether or not any document year is certified or roll corrected):
- The application will prompt the user with the following question:
- “Do you want to delete files from the source folder at ‘{import_document_run.import_path}’ as they are processed and uploaded to the property imaging system’s folder in PACS?”
- If the user confirms by clicking ‘Yes’, then files that have been successfully processed