Join us for an engaging webinar, as we unravel the potential of AI for revolutionizing document management.
Watch Now
Enable your employees to remain productive throughout the document management process.
Read More
Learn how SmartZone uses a regular expression engine integrated into the recognition engine to achieve the best possible accuracy on data that can be defined by a regular expression.
Docubee is an intelligent contract automation platform built to help your team success
My PrizmDoc Cloud hosted server is reporting as unlicensed even though the license lease file is being written to the S3 bucket, what could be causing this?
This issue can occur when using a single S3 bucket for both licensing files as well as additional document storage. When our cloud licensing module attempts to search for the expected lease file inside of this S3 bucket, it requests the list of objects in that directory. However, whenever there are more than 1,000 objects in this bucket, this call only returns a list of the first 1,000 objects.
If there are over 1,000 objects in the bucket, then this could cause the Licensing Service to not see the license lease file when it gets the list of files. The result is that no lease file is found, which in turn causes the service to go unlicensed.
The solution for this issue is to make sure the bucket you are using for licensing is only used for that purpose. Should you encounter this issue, try moving all other files out of the bucket. If that is not possible, you may need to contact Accusoft Support to request changing the bucket your license uses for licensing.
We are using the Webforms Samples and want to know how to enable the “Always User Raster” feature. Which file needs to be modified and how should it be modified?
In order to enable the “Always Use Raster” option for our Webforms sample, you will need to do the following:
How To:
\Prizm\Samples\dotnet\webforms\full-viewer-sample\Default.aspx
Line to Replace:
} else { sessionData.source = getDocumentSource(query.document || ''); }
Replace with:
} else { sessionData.source = getDocumentSource(query.document || ''); sessionData.render = { html5: { alwaysUseRaster: true } }; }
Next, to update the Central Configuration file you will need to stop the Prizm Services.
Make a backup of the prizm\prizm-services-config.yml file.
Edit the .yml file and remove the leading # for the following line and add true to the array so that it looks like the following:
viewing.sessionConstraints.render.alwaysUseRaster.allowedValues: [true, false]
I have EML and MSG files that contain attachments. I want to combine the original EML/MSG document with each of its attachments into a single PDF. How can I do this?
To do this you are going to need to create a viewing session for the EML or MSG file. Once you’ve created the viewing session you can get the viewingSessionIds of the attachments. Once you have the viewingSessionIds you can get the workFile ID associated with each viewing session. With the workfile IDs you can use the Content Conversion Service (CCS) to combine the email with its attachments into a single PDF.
viewingSessionIds
workFile
workfile
Use the following API requests to do this:
Create a new viewing session with:
POST {server_base_url}/PCCIS/V1/ViewingSession
This will give you a viewingSessionId which will be used in future requests.
viewingSessionId
The body for this request will be JSON:
{ "render": { "html5": { "alwaysUseRaster": false } } }
Upload the document with:
PUT {server_base_url}/PCCIS/V1/ViewingSession/u{viewingSessionId}/SourceFile?FileExtension={extension}
The request body must be bytes of the source document. Make sure to include the FileExtension or PrizmDoc won’t be able to detect the file as an EML or MSG file.
FileExtension
Poll for and get the viewingSessionIds of the attachments with:
GET {server_base_url}/PCCIS/V1/ViewingSession/u{viewingSessionId}/Attachments
This will return the viewingSessionIds for each of the attachments.
Get the workfile ID for each of the viewing sessions with:
GET {server_base_url}/PCCIS/V1/ViewingSession/u{viewingSessionId}/FileId
You’ll need to get a fileId for each attachment’s viewingSession and the email’s viewingSession.
fileId
viewingSession
With those workfile IDs, you can use the Content Conversion Service (CCS) to combine each of the workfiles with:
workfiles
POST {server_base_url}v2/contentConverters
The body for this request will be JSON and need to include the workfileId for each of the attachments and the email itself. The body would look like this:
workfileId
{ "input": { "sources": [ { "fileId": "{EmailWorkFileId}" }, { "fileId": "{Attachment1WorkFileId}" }, { "fileId": "{Attachment2WorkFileId}" } ], "dest": { "format": "pdf" } } }
This will return a processId that you can poll using:
processId
GET /v2/contentConverters/{processId}
Once the process is complete, the request will return a results array that will contain the fileId of the final document.
results
You can get the final document that contains all the attachments and original EML/MSG file combined into a single PDF with:
GET /PCCIS/V1/WorkFile/{fileId}
I have installed PrizmDoc based on the documentation against a clean CentOS 7/RedHat 7 system, and Prizm services starts and is showing healthy. However, one of two issues are occurring:
If you cannot view HTML or picture files but can view PDF files, it is often due to specific required libraries not being installed. The following procedure can be executed on CentOS/RedHat 7 to ensure all required PrizmDoc libraries are installed.
Stop the Prizm service: sudo /usr/share/prizm/scripts/pccis.sh stop
sudo /usr/share/prizm/scripts/pccis.sh stop
Copy and paste all of the library installers into a terminal and wait for them to finish:
yum install -y libbz2* libc* libcairo* libcups* libdbus-glib-1* libdl* libexpat* libfontconfig* libfreetype* libgcc_s* libgif* libGL* libjpeg* libm* libnsl* libopenjpeg* libpixman-1* libpng12* libpthread* librt* libstdc++* libthread_db* libungif* libuuid* libX11* libXau* libxcb* libXdmcp* libXext* libXi* libXinerama* libxml2* libXrender* libXtst* libz* linux-vdso*
Restart the server.
If you cannot view PDF, Excel, or Word documents but can view HTML and Picture files, this is often due to installing the Generic PrizmDoc installer, which ends in either client_x86_64.tar.gz or server_x86_64.tar.gz. To resolve this issue you will need to re-install using the links that end in client_x86_64.rpm.tar.gz and server_RHEL7.tar.gz.
My document appears to be loading incorrectly. Are there any troubleshooting steps that I can take?
First, confirm that this is a document-specific issue by trying other documents of the same file type or documents of the same file type with similar size characteristics and content.
Second, if the document is a Microsoft Office document and you are using LibreOffice as your backend renderer, you can compare the way that the document displays in PrizmDoc against the way the document displays in the copy of LibreOffice shipped with PrizmDoc (C:\Prizm\libreoffice\program\soffice.exe on Windows, /usr/share/prizm/libreoffice/program/soffice on Linux). To inquire about the Microsoft Office renderer plugin, which may resolve office document rendering issues, send an email to sales@accusoft.com.
C:\Prizm\libreoffice\program\soffice.exe
/usr/share/prizm/libreoffice/program/soffice
Third, reach out to a support technician at support@accusoft.com, as they will be able to quickly test how the document renders in the latest version of PrizmDoc, and consult the product engineers in the event that there is a rendering issue.
Have the following information handy, as it will help the support technician better assist you:
What version of PrizmDoc are you using?
What operating system are you using?
A PDF export or a screenshot of what you see in PrizmDoc, compared to a screenshot of how the document looks in its native file type viewer.
Log files that include the processing of the incorrectly loading document.
Any changes that you may have made to the PrizmDoc configuration files.
I need to store a unique ID with each of my marks. Is the ID returned by Mark.GetID() unique?
Mark.GetID()
The ID generated by Mark.GetID() is only unique for that instance of the viewing session (for example, if you refresh the page, the counter for mark IDs will reset to 1).
If you are saving your marks to markup layers using the SaveMarkupLayers() method, then each mark will have a unique ID generated which will be stored in the “uid” key in the markup layer JSON.
SaveMarkupLayers()
If you are saving your marks as XML, using the SaveMarks() method, then each mark’s unique ID will be stored in the key “nodeId”.
SaveMarks()
If you want to generate your own unique ID for your marks, you can include the code below in your viewer.js to generate a UUID. A UUID contains 122 randomly generated bits so you shouldn’t need to worry about any duplicate IDs:
function uuidv4() { return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c => (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16) ) }
You can store this UID in the marks data using Mark.SetData("ID", uuidv4());.
Mark.SetData("ID", uuidv4());
You can then use Mark.GetData("ID"); to retrieve the ID at a later time.
Mark.GetData("ID");
We are interested to know how well the cloud offering scales. For example, can we process thousands of transactions per second? Is there a limit to the number of transactions that we can use concurrently?
The limitation will vary depending on the size of the documents and the type of work being performed on them.
PrizmDoc Cloud utilizes AWS servers to scale our services as demand increases, and we do currently rate limit total requests which should not exceed 100 requests within an eight second window. The window is rechecked every four seconds to determine if the rate limit is still in excess.
I know the coordinates and dimensions of the content I would like to highlight, but the highlight annotation only works on text. Is there a way to create an annotation that highlights a specific area of a document?
The best way to do this would be to create a yellow rectangle annotation with 50% opacity (these are the same default values used by the text highlight annotation). The code below demonstrates how to do this in the viewer:
//Create a new rectangle annotation var rectangleMark = viewer.viewerControl.addMark(1, PCCViewer.Mark.Type.RectangleAnnotation); //Set the coordinates and dimensions of the annotation rectangleMark.setRectangle({x: 100, y: 100, width : 200, height: 200}); //Set fillcolor to yellow rectangleMark.setFillColor("#FFFF00"); //Remove the border rectangleMark.setBorderColor("transparent"); //Set opacity to 50% rectangleMark.setOpacity(127);
In the PrizmDoc Viewer, what are the two different ways to load annotation layers?
PrizmDoc has two options for loading annotations, the “My Annotations” pane and the “Annotations for Review” pane.
The “My Annotations” pane is used to load a single annotation layer for editing. You can add, delete, or make changes to annotations and then save those changes using the “My Annotations” pane.
The “Annotations for Review” pane is used for viewing annotations. You can load as many annotation layers for viewing as you would like. You cannot interact with annotations loaded in this way, but you are able to make comments on them. You can toggle between any of these layers to hide them. You can also merge these annotations to the currently loaded annotation layer from “My Annotations”.
For more information see our documentation here: https://help.accusoft.com/PrizmDoc/latest/HTML/Annotation_Layers.html
We wanted to upgrade our previous version of PrizmDoc to the most recent release. However, when trying to install the latest version, the installation is failing. What do I need to do to get the latest version installed?
Typically, this issue may occur if you are upgrading from an older major version to a new major version, such as from PrizmDoc 11 to PrizmDoc 12 or PrizmDoc 13. If you are upgrading from one minor version to another, such as PrizmDoc 13.1 to PrizmDoc 13.6, then it should be seamless.
If you do have issues in either circumstance, it is usually due to files, folders, or registry settings that were left behind from the older version.
In order to fix the installation, please follow the process below to ensure the previous version is completely removed.
Ensure previous installation folders are deleted:
\Prizm and \ProgramData\Accusoft.
Back-up your Windows registry, and then click on Start > Run, and type in regedit
Click Edit and select Find, and then type Prizm
When it finds a match, right-click on the registry key and select Delete
Click F3 to find the next match, and repeat Step 4 for each key.
F3
Repeat Step 5 until the search comes back with “Finished Searching Registry”
Reboot Server and attempt to re-install.
We are planning to upgrade our PrizmDoc Server and PrizmDoc Client to the latest major version. What is the best practice for doing so?
For best results, you will want to follow the instructions below to ensure the cleanest upgrade of the newest version:
NOTE: Before starting, make a backup of the following configuration files for use as reference when re-configuring your new version installation. This should be done before the PrizmDoc installer is run, as all configuration files will be replaced with new ones (resetting them to their default configuration).
Prizm Server Configuration: prizm\prizm-services-config.yml Prizm Client Configuration (Windows): prizm\pas\pcc.win.yml Prizm Client Configuration (Linux): /usr/share/prizm/pas/pcc.nix.yml ServiceHost Configuration: prizm\PCCIS\ServiceHost\pcc.config
Prizm Server Configuration: prizm\prizm-services-config.yml
Prizm Client Configuration (Windows): prizm\pas\pcc.win.yml
Prizm Client Configuration (Linux): /usr/share/prizm/pas/pcc.nix.yml
ServiceHost Configuration: prizm\PCCIS\ServiceHost\pcc.config
Linux Prizm/PAS Service Uninstall:
https://help.accusoft.com/PrizmDoc/latest/HTML/webframe.html#linux-uninstall-prizmdoc-serve.html
https://help.accusoft.com/PrizmDoc/v13.10/HTML/webframe.html#pas-linux-uninstallation.html
Download the latest version of PrizmDoc for your operating system from https://www.accusoft.com/products/prizmdoc-suite/prizmdoc-viewer-builds/
Install PrizmDoc Server first and then the PrizmDoc Client.
At the end of the server installation, the install may request a reboot.
Make a backup of your new configuration files as listed above.
Modify each of the new configuration files and make the same changes as you did in the older configuration files.
NOTE: Do not just replace the new configuration files with the old version configuration files, as new configurations may have been introduced in the new version and they would be lost.
NOTE: If either service fails to start with an error after modifying the configuration files, replace the configuration files with the original copy of the configuration files and try making the changes again.
NOTE: If you are using viewing packages and have an existing database, we provide additional scripts in the \prizm\pas\db folder to modify your existing database. For example, upgrading from PrizmDoc 12.x to PrizmDoc 13.x we provide an additional script addTenantId to add a new field to one of the existing tables.
\prizm\pas\db
addTenantId
What file formats does PrizmDoc Viewer currently support?
Please refer to our latest documentation for the most up-to-date list of supported file formats:
For documentation on older versions of PrizmDoc Viewer, please see our documentation archive.