Quantcast
Channel: Ephesoft Docs
Viewing all 478 articles
Browse latest View live

exportBatchClass

$
0
0

This API is used to export the existing batch class. This method will take the batch class identifier and learnt-sample to be exported with the batch class.

Request Method POST

Web Service URL: http://{serverName}:{port}/dcma/rest/exportBatchClass

 

Input Parameter Values Descriptions
identifier This value should not be empty and valid batch class identifier. This parameter is used for identifying which batch class is to be exported.
lucene-search-classification-sample Either “true”/”false” This parameter is used to decide if the lucene learnt sample is exported with batch class or not.
image-classification-sample Either “true”/”false” This parameter is used to decide if the image classification sample is exported with batch class or not.

 

CheckList:-

  1. Identifier should be a valid batch class identifier.

Sample client code using apache commons http client:-

private static void exportBatchClass() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/exportBatchClass";
		PostMethod mPost = new PostMethod(url);
		String batchClassIdentifier = "BC4";
		mPost.addParameter("identifier", batchClassIdentifier);
		mPost.addParameter("lucene-search-classification-sample", "true");
		mPost.addParameter("image-classification-sample", "false");
		int statusCode;
		try {
			statusCode = client.executeMethod(mPost);
			if (statusCode == 200) {
				System.out.println("Batch class exported successfully");
				InputStream in = mPost.getResponseBodyAsStream();
				File f = new File("C:\\sample\\serverOutput.zip");
				FileOutputStream fos = new FileOutputStream(f);
				try {
					byte[] buf = new byte[1024];
					int len = in.read(buf);
					while (len > 0) {
						fos.write(buf, 0, len);
						len = in.read(buf);
					}
				} finally {
					if (fos != null) {
						fos.close();
					}
				}
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mPost.getResponseBodyAsString());
			}
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mPost != null) {
				mPost.releaseConnection();
			}
		}
	}

getBatchClassList

$
0
0

This API returns s list of all the batch classes accessible by the authenticated user.

Request Method GET

Web Service URL: http://{serverName}:{port}/dcma/rest/getBatchClassList

Sample client code using apache commons http client:-

private static void getBatchClassList() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/getBatchClassList";
		GetMethod mGet = new GetMethod(url);
		int statusCode;
		try {
			statusCode = client.executeMethod(mGet);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = mGet.getResponseBodyAsString();
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mGet.getResponseBodyAsString());
			}
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mGet != null) {
				mGet.releaseConnection();
			}
		}
	}

getRoles

$
0
0

This API is used to get the roles specified for the particular batch class with name given in the input parameter.

Request Method GET

Web Service URL: http://{serverName}:{port}/dcma/rest/getRoles/{batchClassIdentifier}

 

Input Parameter Values Descriptions
identifier This value should not be empty and valid batch class identifier. This parameter is used for identifying which batch class roles to be fetched.

 

CheckList:-

  1. Identifier should be a valid batch class identifier.

Sample client code using apache commons http client:-

private static void getRoles() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/getRoles/BC1";
		GetMethod mGet = new GetMethod(url);
		int statusCode;
		try {
			statusCode = client.executeMethod(mGet);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = mGet.getResponseBodyAsString();
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mGet.getResponseBodyAsString());
			}
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mGet != null) {
				mGet.releaseConnection();
			}
		}
	}

uploadBatch

$
0
0

This API is used for uploading a new batch to a watch folder for a given batch class. It executes the new batch with supplied tif, tiff or pdf files. User need to be authorized to execute a batch for a particular batch class otherwise an error message would be generated. All the files would be copied to the unc folder of the requested batch class with the folder name supplied by the user as input.

Request Method POST

Web Service URL: http://{serverName}:{port}/dcma/rest/uploadBatch/{batchClassIdentifier}/{batchInstanceName}

Input: A valid tif/tiff file.

 

 

Input Parameter Values Descriptions
batchClassIdentifier A valid batch class identifier Example BC1 The identifier of the batch class in which user wishes to upload its batch.
batchInstanceName Name of the batch which is to be uploaded This name with which user wishes to upload the batch.

 

CheckList:-

  1. The value for batchClassIdentifier is compulsory and should be valid with permissions to the user to run the batch on it.
  2. The value for batchInstanceName is mandatory and if left empty then it will send an error.

Sample client code using apache commons http client:-

private static void uploadBatch() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/uploadBatch/BC4/US_Invoice_sample";
		PostMethod mPost = new PostMethod(url);
		// adding image file for processing
		File file1 = new File("C:\\sample\\US-Invoice.tif");
		Part[] parts = new Part[1];
		try {
			parts[0] = new FilePart(file1.getName(), file1);
			MultipartRequestEntity entity = new MultipartRequestEntity(parts, mPost.getParams());
			mPost.setRequestEntity(entity);
			int statusCode = client.executeMethod(mPost);
			String responseBody = mPost.getResponseBodyAsString();
			// Generating result as responseBody.
			System.out.println(statusCode + "***" + responseBody);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mPost.getResponseBodyAsString());
			}
		} catch (FileNotFoundException e) {
			System.err.println("File not found for processing.");
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mPost != null) {
				mPost.releaseConnection();
			}
		}
	}

How To Add additional File types in Folder-Import

$
0
0

How to Page?

 

Topic #9721 : How To Add Support For additional File types in Folder-Import

Applicable Ephesoft versions: 3.1 and up

Ephesoft can process the following file types:

supportedfiletypes
 
  But in order to process them a few settings alterations are required.

 

Instructions:
 
1. Navigate to the Ephesoft/Application/WEB-INF/classes/META-INF Folder
 
Windows 4030 Final-2015-08-12-06-57-41
 
2. Open the property file named “folder-monitor.properties” in a text editor as admin.
 
Windows 4030 Final-2015-08-12-06-57-59
 
3. On line 2 of the properties add the supported file extensions you would like Ephesoft to handle.
 
Windows 4030 Final-2015-08-12-06-58-15
 
4. Restart Ephesoft.
 
 
< Back | How To Main Page

Document Type Creator

$
0
0

This API will create the new document type for the specified batch class supplied as an input.

Request Method POST

Web Service URL:

http://{serverName}:{port}/dcma/rest/batchClass/documentTypeCreator

Input Parameters:

Input Parameter Values Descriptions
documentTypeName The document type name should be nonempty and should not contain ‘*’ symbol. This parameter is the unique name of the new  document type to be create
documentTypeDescription This should be a non-empty Value This parameter is the description of the new document type created
minConfidenceThreshold The minimum confidence threshold cannot be null and should be between 0 and 100 inclusive of both. The minimum threshold value for the documents recognition
formProcessingProjectFile The name of the RSP file for recostar extraction This file would be used for KV extraction by Recostar engine
batchClassIdentifier This value should be nonempty and a pre-existing Batch Class Identifier The identity of the Batch Class Identifier under which document type is to be created
Hidden Can be true or false This parameter signifies whether new document type created should be hidden or not.

 

Check List:-

  1. documentTypeName should be unique and non-empty.
  2. minConfidenceThreshold should be a value between 0 and 100.
  3. formProcessingProjectFile should be a name of pre-existing RSP/ZON file.
  4. batchClassIdentifier should be an identity of pre-existing Batch Class.

Sample Input XML:

<?xml version="1.0" encoding="UTF-8"?>

<WebServiceParams>

 

<Params>

 

<Param>

 

<Name>documentTypeName</Name>

 

<Value>MyDocument</Value>

 

</Param>

 

<Param>

 

<Name>documentTypeDescription</Name>

 

<Value>Abcd</Value>

 

</Param>

 

<Param>

 

<Name>minConfidenceThreshold</Name>

 

<Value>100</Value>

 

</Param>

 

<Param>

 

<Name>firstPageProjectFile</Name>

 

<Value>FPR.rsp</Value>

 

</Param>

 

<Param>

 

<Name>batchClassIdentifier</Name>

 

<Value>BC4</Value>

 

</Param>

 

<Param>

 

<Name>hidden</Name>

 

<Value>FALSE</Value>

 

</Param>

 

</Params>

 

</WebServiceParams>

 

Note: Values highlighted in blue should be replaced with corresponding values while executing the Web service for copying an existing batch Class.

 

Sample client code using apache commons http client:-

private static void createDocumentType() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/batchClass/documentTypeCreator";
		PostMethod mPost = new PostMethod(url);
		// Adding Input XML file for processing
		File file = new File("C:\\sample\\sample.xml");
		Part[] parts = new Part[1];
		try {
			parts[0] = new FilePart(file.getName(), file);
			MultipartRequestEntity entity = new MultipartRequestEntity(parts, mPost.getParams());
			mPost.setRequestEntity(entity);
			int statusCode = client.executeMethod(mPost);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = mPost.getResponseBodyAsString();
				// Generating result as responseBody.
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mPost.getResponseBodyAsString());
			}
		} catch (FileNotFoundException e) {
			System.err.println("File not found for processing.");
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mPost != null) {
				mPost.releaseConnection();
			}
		}
	}

Upload files for learning files

$
0
0

This API will upload files for learning for a particular document type in a batch class to

  • Shared Folder\ [BatchClassID]\lucene-search-classification-sample folder

[Document-Type] _First_Page
[Document-Type] _Middle_Page
[Document-Type] _Last_Page

  • image-classification-sample folder [Application-Installed-Path]\Shared Folder\ [BatchClassID]\image-classification-sample folder

[Document-Type] _First_Page
[Document-Type] _Middle_Page
[Document-Type] _Last_Page

  • Both (image-classifiation and lucene) depending upon input parameters supplied.

This Web Service API can upload files (tif/tiff) for multiple document type of a batch class. Only files will be uploaded to the respective folders.

The upload instruction will be in the form of specific xml format.

Request Method POST

Web Service URL: http://{serverName}:{port}/dcma/rest/batchClass/uploadLearningFile

Input Parameters: Input parameters are a XML file and tiff file/files

XML file Input parameters

Input Parameter Values Descriptions
batch_class_id This value should be an existing batch class Id. This Parameter specifies the Batch Class Id for which learning of files is needed
doc_type_name This should be an existing document type. This parameter specifies the document for which files are getting uploaded. In a single XML file can have multiple doc type name, as we can upload document for more than one doc type at a time.
learning_type Its value can be ‘’lucene’’, ‘’Image’’ or ‘’both’’. If learning type is selected as Lucene file will be uploaded under  Lucene-search-classification-sample folder  only, if learning type is image than file will be uploaded under image-classification-sample folder only. For learning_type value as ‘Both’, files will be uploaded under Lucene
file_name Valid FileName. File can be either of tif, tiff extension or zip extension. In case of zip file the files compressed must be of extension tif, tiff. This API accepts learning files in the form of tif, tiff files or an archive of tif, tiff files. To upload multiple files to a directory user can either use multiple file_name tag or create an archive of all files and upload that archive (.zip file). The structure ofr archive is fixed. It need to be upload.zip

Other than above parameters specified in xml files, user need to upload a complete and accurate XML with other learning files (tif/tiff files).

Sample XML file format:


<upload_learning_files>

 

<batch_class_id>BC5</batch_class_id>

 

<doc_type>

 

<doc_type_name>US Invoice</doc_type_name>

 

<learning_type>Both</learning_type>

 

<page_type_first>

 

<files_to_be_uploaded>

 

<file_name>US-Invoice.tif</file_name>

 

</files_to_be_uploaded>

 

</page_type_first>

 

<page_type_middle>

 

<files_to_be_uploaded>

 

<file_name>US-Invoice2.tif</file_name>

 

</files_to_be_uploaded>

 

</page_type_middle>

 

<page_type_last>

 

<files_to_be_uploaded>

 

<file_name>US-Invoice3.tif</file_name>

 

</files_to_be_uploaded>

 

</page_type_last>

 

</doc_type>

 

</upload_learning_files>

 

Check List:-

Before uploading following points need to ensured first:

  • XML and other required learning files are attached with the request.
  • Name of learning files mentioned in the XML must match with the file name uploaded with the request.
  • XML format must be same as it shown in Sample XML format. Rearrangement of the xml is not allowed.
  • batch_class_id, doc_type_name, learning_type, are mandatory information and must need to be specified. User cannot omit these fields.
  • If user don’t upload file for particular page type(first, middle and last). He can omit the whole block. (Starting from page_type_first, page_type_middle or page_type_last ).
  • All the upload information need to be uploaded in single XML file. User cannot split information across different XML and then upload all of them. Only 1 xml will be allowed at a time.
  • In a xml file there needs to be single batch_class_id, but there can be multiple <doc_type>. Inside a doc_type there can only one doc_type_name, learning_type , page_type_first, page_type_middle, page_type_last block.
  • If learning files for a particular page folder(ex. First page) are getting uploaded in a single file Zip folder need to follow a specific structure. {zipfileName.zip} à {zipFileName folder} à{file1, file 2, file3 and so on}. Zip file name and first folder name inside zip file needs to be same.

Sample client code using apache commons http client:-

private static void uploadLearningFile() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/batchClass/uploadLearningFile";
		PostMethod mPost = new PostMethod(url);
		// Adding Input XML file for processing
		File file = new File("C:\\sample\\sample.xml");
		File file1 = new File("C:\\sample\\US-Invoice.tif");
		File file2 = new File("C:\\sample\\US-Invoice2.tif");
		File file3 = new File("C:\\sample\\US-Invoice3.tif");

		Part[] parts = new Part[4];
		try {
			parts[0] = new FilePart(file.getName(), file);
			parts[1] = new FilePart(file1.getName(), file1);
			parts[2] = new FilePart(file2.getName(), file2);
			parts[3] = new FilePart(file2.getName(), file3);

			MultipartRequestEntity entity = new MultipartRequestEntity(parts, mPost.getParams());
			mPost.setRequestEntity(entity);
			// send post request to server
			int statusCode = client.executeMethod(mPost);

			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = mPost.getResponseBodyAsString();
				// Generating result as responseBody.
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mPost.getResponseBodyAsString());
			}
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mPost != null) {
				mPost.releaseConnection();
			}
		}
	}

Run Batch Instance

$
0
0

This API is used to run the batch instance from READY_FOR_REVIEW or READY_FOR_VALIDATION module to next phase in workflow. User can restart those batch instances which are accessible by their role.

Request Method: GET

Web Service URL: [http://{serverName}:{port}/dcma/rest/runBatchInstance/{batchInstanceIdentifier}]

Input Parameters for the Web Service are as follows:

Input Parameter Value Description
batchInstanceIdentifier It should contain a value of an existing batch instance Identifier. The parameter value should contain a valid batch instance identifier.

Note: Value highlighted in the curly braces in input URL should be replaces with corresponding values.Module name should end with _module.

Sample client code using apache commons http client:-

private static void runBatchInstance() {
		HttpClient client = new HttpClient();
		String url = "http://localhost:8080/dcma/rest/runBatchInstance/BI4";
		GetMethod getMethod = new GetMethod(url);
		int statusCode;
		try {
			statusCode = client.executeMethod(getMethod);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = getMethod.getResponseBodyAsString();
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(getMethod.getResponseBodyAsString());
			}
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (getMethod != null) {
				getMethod.releaseConnection();
			}
		}
	}	

extractFixedForm

$
0
0

This API extracts the value of document level fields present in the given document type from the image provided. The extraction of the pages will be done based on the project processing file mapped to the first, second, third and last page. For Windows a default page processing file is picked by default in case no file is mapped against the documents in the batch class. In case of Linux if no files are mapped against the pages, no extraction is performed. Backward compatibility has been enabled where the web service will allow old set of input parameters as well as the modified ones. With old set of input parameter extraction will be performed on the input image according to the RSP/ZON file depending upon the environment being Windows or Linux respectively.

Request Method POST

Web Service URL http://{serverName}:{port}/dcma/rest/extractFixedForm

Example- http://localhost:8080/dcma/rest/extractFixedForm

Input Parameters                                                                                                                                

Input parameters to the Web Service API would be two files

  • Tiff/PNG (single page or multipage)
  • XML file, with document type and batch class identifier as parameters.

Sample XML

<WebServiceParams>

<Params>

<Param>

<Name>batchClassIdentifier</Name>

<Value>BC8</Value>

</Param>

<Param>

<Name>docType</Name>

<Value>US Invoice</Value>

</Param>

</Params>

</WebServiceParams>

Alternate (old) Input Parameters

Alternate Input parameters to the Web Service API would be three files

  • Tiff/PNG (single page or multipage)
  • XML file, with colorSwitch and projectFile as parameters.
  • Page processing file

Sample XML

<WebServiceParams>

<Params>

<Param>

<Name>colorSwitch</Name>

<Value>OFF</Value>

</Param>

<Param>

<Name>projectFile</Name>

<Value>US_INVOICE.rsp</Value>

</Param>

</Params>

</WebServiceParams>

CheckList:

  • If colorSwitch is ON then image should be PNG.
  • If colorSwitch is OFF then image should be Tif/Tiff.
  • For Linux Operating System, the color switch is set to OFF, by default.
  • In case the color switch is ON and the uploaded image is a Tiff, it is internally converted into a PNG for processing.

Sample client code using apache commons http client for the first set of input parameters:-

private static void extractFixedForm() {
		HttpClient client = new HttpClient();
		String url = " http://localhost:8080/dcma/rest/extractFixedForm ";
		PostMethod mPost = new PostMethod(url);
		// adding file for sending
		File file1 = new File("C:\\sample\\US-Invoice.tif");
		File file2 = new File("C:\\sample\\fixedForm.xml");
		Part[] parts = new Part[2];
		try {
			parts[0] = new FilePart(file1.getName(), file1);
			parts[1] = new FilePart(file2.getName(), file2);
			MultipartRequestEntity entity = new MultipartRequestEntity(parts, mPost.getParams());
			mPost.setRequestEntity(entity);
			int statusCode = client.executeMethod(mPost);
			if (statusCode == 200) {
				System.out.println("Web service executed successfully.");
				String responseBody = mPost.getResponseBodyAsString();
				// Generating result as responseBody.
				System.out.println(statusCode + " *** " + responseBody);
			} else if (statusCode == 403) {
				System.out.println("Invalid username/password.");
			} else {
				System.out.println(mPost.getResponseBodyAsString());
			}
		} catch (FileNotFoundException e) {
			System.err.println("File not found for processing.");
		} catch (HttpException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (mPost != null) {
				mPost.releaseConnection();
			}
		}
	}

4.0.3.0 Known Issues

$
0
0

Applies to: v4.0.3.0

Following are the known bugs:

1. On Fuzzy DB Plugin Configuration Screen user can enter confidence threshold more than 100.00
2. On Ephesoft upgrade from 3.x to 4.x Fuzzy DB and DB Export settings are not copied.
3. When Batch Class Tree Navigation Panel is collapsed, then user is unable to open Document Type/Index field/Tables using double click or Ctrl + k shortcut or Open button.
4. Fuzzy DB Mapping Configuration: When user resets a mapping from a document type then mappings in other document type with same index field name is also deleted.
5. Minor UI issues on Internet Explorer Version 11.

 


 

 

checkWSStaus Web Service API

$
0
0

Overview
Web service API to query the current running status of the web service. This web service is only useful with initiateOcrClassifyExtract web service. Using this web service the user can figure out the completed state of the ocrClassifyExtract web service request. On running the initiateOcrClassifyExtract web service, a numeric token is returned. The checkWSStatus web service uses this token to determine the current operational state. The various states a web service can be into are
• SPLIT_COMPLETED
• OCRing_COMPLETED
• CLASSIFICATION_COMPLETED

Input Parameters
Input parameters to the Web Service API would be a valid numeric token. ocrToken

Output Parameters
The outputs to the web service varies as follows.
When the initiateOcrClassifyExtract web service is performing split, OCR or classification results would be SPLIT_COMPLETED, OCRing_COMPLETED and CLASSIFICATION_COMPLETED respectively. When the web service completes the extraction, the result is a valid xml file with extracted fields and values.

Service Request : GET

Web Service URL
http://:8080/dcma/rest/checkWSStatus

Example-
http://localhost:8080/dcma/rest/checkWSStatus

Sample client code using apache commons http client:-

private static void checkWSStatus ()  {
HttpClient client = new HttpClient();
String url = ” http://localhost:8080/dcma/rest/checkWSStatus?ocrToken=1233232323 “;
GetMethod getMethod = new GetMethod(url);
int statusCode; try { statusCode = client.executeMethod(getMethod);
if (statusCode == 200) {
System.out.println(“Web service executed successfully.”);
String responseBody = getMethod.getResponseBodyAsString();
System.out.println(statusCode + ” *** ” + responseBody);
}
else if (statusCode == 403) {
System.out.println(“Invalid username/password.”);
}
else {
System.out.println(getMethod.getResponseBodyAsString());
}

}
catch (HttpException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (getMethod != null)
{
getMethod.releaseConnection();
}
}
}



                       

Windows 4.x Release

$
0
0

 

Server Environments
Operating System Windows 7 SP1
Windows Server 2008 32 bit
Windows Server 2008 64 bit
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
Windows Server 2016 (4.1.2.0 or higher)
Databases Microsoft SQL Server 2008 – All Versions
Microsoft SQL Server 2012 (X64) – All Versions
Microsoft SQL Server 2014
Microsoft SQL Server 2016 (4.1.2.0 or higher)
Microsoft SQL Azure – 12.0.2000.8 (Release 4.0.6.0 Onwards) – Fuzzydb and Export DB Only
MariaDB – 10.0.19
MySql – 5.5
Oracle -11.2.0.4 (Release 4.1 Onwards)
Oracle -12.1.0.2.0 (Release 4.1 Onwards)
Application Server Tomcat 7.0.73 (Till 4.1.2.1)

Tomcat 8.0.44 (4.1.3.0 Onwards)

Web Server Apache 2.2 (httpd)
Authentication LDAP 2.2
LDAP 2.4
Active Directory
Java Platforms Java 7 & Java 8 from Release 4.1 Onwards
Client Environments
Browser Support IE Version 10 and above
Chrome Version  43.0.2357.124 m
Firefox Version 38.0.1 and above
Scanners Fujitsu Scanners
– Fujitsu fi-6130
– Fujitsu fi-6140z
– Fujitsu fi-7160
Drivers
– Twain driver
– PaperStream driver
Web Scanner Support 32-bit Browser
32-bit Java Plugin
Screen Resolution 1366*768 and above

 

 

Linux 4.x Release

$
0
0

 

Server Environments
Operating System Ubuntu 14.04 LTS 64-bit
Ubuntu 14.10 64-bit
Ubuntu 16.04 LTS 64-bit (To Be Certified Q1 2018)
RHEL 6.8 64-bit
Oracle Linux 6.8 64-bit
CentOS 7 64-bit (To Be Certified Q1 2018)*
SUSE 64-bit (To Be Certified Q1 2018)
 Databases MariaDB – 10.0.19
MySql – 5.5
Oracle – 11.2.0.4 (Release 4.1 Onwards)
Oracle -12.1.0.2.0 (Release 4.1 Onwards)
Application Server Tomcat 7.0.73
Web Server Apache 2.2 (httpd)
Authentication LDAP 2.2
LDAP 2.4
Active Directory
Java Platforms Java 7 & Java 8(Release 4.1 Onwards)
Client Environments
Browser Support IE Version 10 and above
Chrome Version  43.0.2357.124 m
Firefox Version 38.0.1 and above
Scanners Fujitsu Scanners
– Fujitsu fi-6130
– Fujitsu fi-6140z
– Fujitsu fi-7160
Drivers
– Twain driver
– PaperStream driver
Web Scanner Support 32-bit Browser
32-bit Java Plugin
Screen Resolution 1366*768 and above

 

* – All versions of CentOS 6.x or lower will not be supported due to Compliance issues with the Nuance OCR engine.

4030_Performance_Reports

Batch.xml Schema

$
0
0

These are the details on the batch.xml schema.

Batch Level Fields Description Created Module Assigned Module (Plugin)
<BatchInstanceIdentifier> Value of the [identifier] column in the batch_instance table. Each batch in Ephesoft has a unique batch Identifier. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchClassIdentifier> This is the value of the [identifier] column in the batch_class table. Each batch in Ephesoft is run under a batch class that is a single unit for all configurations and workflow definitions. A foreign key relation is established between the [ID] column of the batch_class table and the column [batch_class_id] in the batch_instance table. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchClassName> This is the value of the [batch_class_name] column in the batch_class table. Each batch in Ephesoft is run under a batch class that is a single unit for all configurations and workflow definitions. A foreign key relation is established between the [ID] column of the batch_class table and the column [batch_class_id] in the batch_instance table. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchClassDescription> This is the value of the [batch_class_description] column in the batch_class table. Each batch in Ephesoft is run under a batch class that is a single unit for all configurations and workflow definitions. A foreign key relation is established between the [ID] column of the batch_class table and the column [batch_class_id] in the batch_instance table. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchClassVersion> This is the version number of the batch class under which the batch was processed. This is the value of the [batch_class_version] column in the batch_class table. Each batch in Ephesoft is run under a batch class that is a single unit for all configurations and workflow definitions. A foreign key relation is established between the [ID] column of the batch_class table and the column [batch_class_id] in the batch_instance table. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchName> Value of the [batch_name] column in the batch_instance table. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchPriority> Value of the [batch_priority] column in the batch_instance table. Priority can be a value between 1 to 100 with the lower number having higher priority. If not assigned using custom code the batch priority will be the priority from the Batch Class which is assigned when the batch class is created or imported. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchCreationDate> This is the value of the [creation_date] column in the batch_class table. This is the date and time when the batch was created in Ephesoft. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<BatchLocalPath> The is the Ephesoft system folder path where the Batch Instance folder will be available. This value will be the same across all batches in the system. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<UNCFolderPath> This is the patch where the source file for the batch is available. This is a unique patch for each batch in the system. Folder Import Folder Import (Import_Batch_Folder_Plugin)
Document Level Fields
<Identifier> This is the Document Identifier for a document. The sequence for document numbering is DOC0, DOC1…. DOCnNote: Based on our current implementation where each file becomes a separate batch, there will be only one document in the XML after Folder Import. All pages will belong to this one document. The page to document grouping will change after the Document_Assembler_Plugin within the Page Process module is executed. The pages may be grouped into multiple documents. Folder Import 1. Folder Import (Import_Batch_Folder_Plugin)
2. Document Assembly (Document_Assembler_Plugin)
<Type> This is the Document Type assigned to the document.Note: Based on our current implementation where each file becomes a separate batch, there will be only one document in the XML after Folder Import. All pages will belong to this one document and named Unknown. The page to document grouping will change after the Document_Assembler_Plugin within the Page Process module is executed. The pages may be grouped into multiple documents and the document as which the pages were classified is assigned against this tag. The document types that belong to the batch class assigned to the batch is available in the database table document_type (field – document_type_name). This table has a foreign key reference to the [ID] column of the batch_class table that associates documents to batch class. Folder Import 1. Folder Import (Import_Batch_Folder_Plugin)
2. Document Assembly (Document_Assembler_Plugin)
<Description> This tag contains the corresponding document_type_description of the assigned document_type_name above. It is picked up from the database table document_type. Folder Import 1. Folder Import (Import_Batch_Folder_Plugin)
2. Document Assembly (Document_Assembler_Plugin)
<Confidence> This is the confidence with which the document was assembled. If the confidence is greater than the Minimum confidence threshold assigned to the document then the document is not marked for Operator REVIEW. Folder Import 1. Folder Import (Import_Batch_Folder_Plugin)
2. Document Assembly (Document_Assembler_Plugin)
<ConfidenceThreshold> Confidence threshold helps Ephesoft to decide if the document should skip document review automatically when the classification score is higher than the threshold. The document confidence threshold is available in the table document_type (field- min_confidence_threshold). The best practice is to set the threshold so that false positives are minimized. Document Assembly 1. Document Assembly (Document_Assembler_Plugin)
<Valid> This tag determines if the document would stop for Document Field Validation Review. Applicable only when data extraction is part of the batch class. False indicates that the document has fields that need to stop for Document Field Validation review. True indicates that all fields in the document were extracted with high confidence and need not stop for Document Field Validation review. The value is set to True after execution of Review_Document_Plugin if the extraction module is not configured in the batch class. Document Assembly 1. Document Assembly (Document_Assembler_Plugin)
2. Review Document (Review_Document_Plugin)
<Reviewed> This tag determines if the document would stop for Document Classification Review. False indicates that the document was assembled/classified with low confidence and needs to stop for Document Classification review. True indicates that the document was assembled/classified with high confidence and need not stop for Document Classification Review. The value is set to True after execution of Review_Document_Plugin. Document Assembly 1. Document Assembly (Document_Assembler_Plugin)
2. Review Document (Review_Document_Plugin)
<ErrorMessage/> A string that contains error message to be displayed on RV screen corresponding to a document. Value of this tag can be set using a scripting plugin. Ephesoft don’t set value for this field. Review/ Validation Review/ Validation
<DocumentDisplayInfo/> It can be used to provide customized names to documents on RV screen. Value of this tag can be set using a scripting plugin. Ephesoft don’t set value for this field. Review/ Validation Review/ Validation
Page Fields
<Identifier> This is the Document Identifier for a document. The sequence for document numbering is PG0, PG1…. PGnNote: The folder import module breaks up each page in the source PDF into individual TIFF files. Each TIFF file is a page in the XML. Pages can be grouped as documents. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<OldFileName> This tag contains the name of the mapped individual TIFF file within the Input folder for the batch. The input folder path is available in the tag <UNCFolderPath> under batch level fields. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<NewFileName> This tag contains the name of the mapped individual TIFF file within the Ephesoft system folder. The ephesoft system folder path is available in the tag <BatchLocalPath>. The path to the Batch instance folder is <BatchLocalPath>\<BatchInstanceIdentifier>. The name of the associated file to this page is a combination of the batch instance identifier and the page sequence. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<HocrFileName> The Recostar_HOCR_Generation_Plugin extracts the contents of each page (individual TIFF) using Recostar. The contents are stored in an XML file which is located in the batch instance folder (<BatchLocalPath>\<BatchInstanceIdentifier>). This tag stores the name of the HOCR xml file for the corresponding page. Page Process Page Process (Recostar_HOCR_Generation_Plugin)
<ThumbnailFileName> The Image_Process_Create_Thumbnails_Plugin plug-in is used to create thumbnail images of the batch images. These thumbnails are displayed in Review and Validate screen, where pages in the documents are shown as thumbnails under the document name. The thumbnails are stored in the batch instance folder (<BatchLocalPath>\<BatchInstanceIdentifier>). This tag stores the name of the corresponding thumbnail for the page. Page Process Page Process (Image_Process_Create_Thumbnails_Plugin)
<DisplayFileName> The Image_Process_Create_Display_Image_Plugin performs the functionality of creating the display png files for the images being processed. This plugin takes all the images and creates png files for the corresponding pages and is displayed on the Review and Validate UI screens. The display images are stored in the batch instance folder (<BatchLocalPath>\<BatchInstanceIdentifier>). This tag stores the name of the corresponding display image for the page. Page Process Page Process (Image_Process_Create_Display_Image_Plugin)
<OCRInputFileName> This tag stores the name of the file that was used by the Recostar_HOCR_Generation_Plugin to extract the contents of the page. The image will be the corresponding individual TIFF for the page available in the batch instance folder (<BatchLocalPath>\<BatchInstanceIdentifier>). Page Process Page Process (Recostar_HOCR_Generation_Plugin)
<Direction> It tells the direction of rotated document. Folder Import Folder Import (Import_Batch_Folder_Plugin)
<IsRotated> It tells whether a document is rotated on RV screen or not. Folder Import Folder Import (Import_Batch_Folder_Plugin)
Page Level Fields
<Name> This tag contains the name of the classification used to classify this page. Page Process Page Process (Classification Plugins)
<Value> Each document_type within the batch class is sub divided into pages (FIRST, MIDDLE & LAST). This tag holds the document page that this page was classified as. Page Process Page Process (Classification Plugins)
<Type/> It is used in barcode classification only where it keeps information about barcode type. Page Process Page Process (Classification Plugins)
<Confidence> This tag holds the confidence score with which the page was classified. This confidence is used while assembling document in Document assembly module. Page Process Page Process (Classification Plugins)
<LearnedFileName> This tag holds the name of the lucene-search-classification-sample against which this page/image matched to. Page Process Page Process (Classification Plugins)
<AlternateValues> It tell about Alternate Values for a page level field. Generally, it store alternative classification information with its confidence. While classification, a page can be classified into 10 different types. The type having highest confidence value will be set in Page level field value and all other possible types for a page will present in alternative values. This tag will also contain the <LearnedFileName> tag for all the alternate values. Page Process Page Process (Classification Plugins)
PS: Page level field holds information about pages processed by Ephesoft. It generally holds information generated by classification plugins in page process module. Each classification plugin will have a page level field tag in batch xml. Document level field tags consists of information about the document level fields configured in batch class. Behind the scene Page level Fields and Document level Field has same schema that’s why both of them display same fields, but not all of them serve some purpose in both the cases. For example OcrConfidenceThreshold, OcrConfidence, FieldValueChangeScript fileds have their significance in document level fields only. LearnedFileName serves its purpose in Page level field only.

ExportDB Failure

$
0
0

 

Known Issues Articles

 

Known Issue#: 9590

Topic/Category: DB Export

Ephesoft version(s) Affected: All

Issue:

A generic error log of MS SQL database “Data truncation” is logged. This error tells then Ephesoft is trying to insert longer string then defined for the column. Please refer below error logs:

//——

Caused by: com.ephesoft.dcma.core.DCMAException: DB Export Plugin: Problem occured in exporting batch document level fields to database Error occured in executing query

at com.ephesoft.dcma.dbexport.service.DbExportServiceImpl.dbExport(DbExportServiceImpl.java:55)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318)

at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:55)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)

at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)

at com.sun.proxy.$Proxy150.dbExport(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)

at org.activiti.engine.impl.javax.el.BeanELResolver.invoke(BeanELResolver.java:483)

… 102 more

Caused by: com.ephesoft.dcma.core.exception.DCMAApplicationException: DB Export Plugin: Problem occured in exporting batch document level fields to database Error occured in executing query

at com.ephesoft.dcma.dbexport.DbExporter.exportBatchToDb(DbExporter.java:89)

at com.ephesoft.dcma.dbexport.service.DbExportServiceImpl.dbExport(DbExportServiceImpl.java:51)

… 120 more

Caused by: com.ephesoft.dcma.core.exception.DCMAApplicationException: Error occured in executing query

at com.ephesoft.dcma.dbexport.util.DBExportUtil.insertItems(DBExportUtil.java:539)

at com.ephesoft.dcma.dbexport.DbExporter.exportBatchToDB(DbExporter.java:102)

at com.ephesoft.dcma.dbexport.DbExporter.exportBatchToDb(DbExporter.java:83)

… 121 more

Caused by: java.sql.DataTruncation: Data truncation

at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:382)

at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2820)

at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2258)

at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:632)

at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:584)

at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:546)

at net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:723)

at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1166)

at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1119)

at com.ephesoft.dcma.dbexport.util.DBExportUtil.exportToDB(DBExportUtil.java:553)

at com.ephesoft.dcma.dbexport.util.DBExportUtil.insertItems(DBExportUtil.java:526)

… 123 more

 

Root Cause:

Database table mapped to batch class BC5 for DB export Export_Invoice_line_Items contains column Description whose length is limited to 50 characters

image002

Solution:

Alter the table length to fit the string being exported.

Updates:

Ex: 1/1/14 – Patch was provided for v3.1.2.5, Permanent solution will be included in v3.1.2.6 or higher

 

< Back| Known Issues Main Page | Next Known Issue #? >

 

 

 

Two Levels of Ephesoft Validation

$
0
0

KB Articles

 

KB Article # 9538

Topic/Category: Validation

Issue: Two Levels of Ephesoft Validation

Detail:

Ephesoft performs validation at two levels 
1. Automatic Validation : Here all the extracted values for index fields are checked for the data type match and appropriate values are marked as exceptions before being presented to the user. So we perform all the data type checks automatically.
2. Manual Validation/Validation : Where all your validation rules are matched against the extracted/modified values. If operators change some values so in order to prevent such errors we have provided validation rules where you/admins can restrict invalid entries.
You need to be careful while adding validation rules to the system. If you deliberately allow adding alphabets for integer fields then you might end up into problems during export.
However if you want to perform data type validation checks again then you can create a Field value change script which can check for data type validity whenever a field value is modified.

 

 

 

Best Practices – Multi-Server Environment

$
0
0

When deploying a multi-server Ephesoft cluster, there are a few Best Practices recommendations.

Prerequisites:

  1. Database
    1. When creating an Ephesoft cluster, it is recommended that you first install MSSQL or MySQL on a server which will not be a processing server or a UI server. This minimizes the running processes, utilized RAM, I/O reads and writes, and network requests send to this server.
    2. Currently we support failover databases with the MSSQL always on availability feature. We recommend you run a second server which hosts the redundant databases for ephesoft so that you minimize single points of failure in case of hardware or OS issues.
    3. We recommend weekly database backups. Ephesoft must be stopped for the backups to occur.
  2. SharedFolders
    1. It is recommended that you install the SharedFolders on a separate machine from any of the processing or UI servers. This is to minimize I/O read and writes, along with minimizing network requests to the server and drive hosting the SharedFolders.
    2. We also recommend weekly backups of the SharedFolders when the databases are backed. Ephesoft must be stopped for the backups to occur.
    3. If possible, RAID shares are preferred.
  3. Workflows and other configurations
    1. By default, in Ephesoft 4.0 based versions, the pickup service is set to run on only one server at a time in the cluster. This prevents two machines from requesting the same batch class. The cron schedule for this no longer has to be scheduled.
    2. It is recommended to set the email import service to run on a UI server to minimize CPU utilization, I/O reads and writes, and network traffic on the processing servers so that they can focus on the Ephesoft workflow.
    3. “clean error job” executing on each server in a multi-server environment at same time can cause deadlock issues. We would recommend to schedule this in such a way that at no time it is executing simultaneously on multiple servers.
      Following changes would be required to do so:     
           Property File: <Application Directory>/WEB-INF/classes/META-INF/dcma-workflows.properties
           Property: dcma.clean.error.job.cronjob.expression
           Value:  
               0 0/30 * ? * * on server 1
               0 5/30 * ? * * on server 2
               0 15/30 * ? * * on server 3 … and so on

 

 

How To Add additional File types in Folder-Import

$
0
0

How to Page?

 

Topic #9721 : How To Add Support For additional File types in Folder-Import

Applicable Ephesoft versions: 3.1 and up

Ephesoft can process the following file types:

supportedfiletypes
 
  But in order to process them a few settings alterations are required.

 

Instructions:
 
1. Navigate to the Ephesoft/Application/WEB-INF/classes/META-INF Folder
 
Windows 4030 Final-2015-08-12-06-57-41
 
2. Open the property file named “folder-monitor.properties” in a text editor as admin.
 
Windows 4030 Final-2015-08-12-06-57-59
 
3. On line 2 of the properties add the supported file extensions you would like Ephesoft to handle.
 
Windows 4030 Final-2015-08-12-06-58-15
 
4. Restart Ephesoft.
 
 
< Back | How To Main Page

How to add Filebound Export Plugin in 4.0.x

$
0
0

 

Topic #1 : Add Filebound Export Plugin in 4.0.x

Applicable Ephesoft versions: 4.0.x

In the 4.0 release of Ephesoft, the FileBound Export Plugin was removed. In order to add it manually to the workflow, you will need to follow the instructions below.

Associated Download:  dcma-filebound.zip

Instructions:

 

  1. Stop Ephesoft server
  2. Extract the dcma-filebound.zip content at a temporary location.
  3. Go to [Ephesoft_home]\Application\WEB-INF\classes\META-INF\* directory.
  4. Copy extracted directory dcma-filebound to META-INF folder.Structure of META-INF folder will be like:—META-INF—–|—–dcma-filebound—–

    |— applicationContext.xml

    |— dcma-filebound.properties

    |— filebound-field-lookup.properties

    |— init-testdata.sql

  5. Run below query in Ephesoft database :For MySQL :UPDATE plugin SET is_deleted=b’0′ WHERE  plugin_name=’FILEBOUND_EXPORT’;

     

    For MS SQL:

    UPDATE plugin SET is_deleted=’0′ WHERE  plugin_name=’FILEBOUND_EXPORT’;

  6. Start Ephesoft Service

 

File bound export plugin will be added to available plugins list.

 

 

< Back | How To Main PageNext How To Article #? >

Viewing all 478 articles
Browse latest View live