Technical FAQs

Question

We have been noticing in our PrizmDoc environment that the viewer seems to take longer and longer to view documents over time. After a few days, we restart the Prizm services, and the Viewer processes faster. What might be the reason for this issue?

Answer

This issue is typically caused by a change in the core count of the server after PrizmDoc has been installed. Specifically, the non-interactive heap size will not automatically update if the core count is changed after PrizmDoc has been installed. We update this value during install.

If you have made changes to the core count of the server after installation, please see the following page for correlation between the non-interactive heap size and the CPU cores count:
https://help.accusoft.com/PrizmDoc/latest/HTML/registry-changes.html?highlight=heap%2C.

The reason the non-interactive heap size matters here is because it affects performance of the Office and HTML conversion services, and the symptom of insufficient non-interactive heap size is soffice.bin crashing.

Discover the future of legal data management with AI-powered PII detection and redaction. As legal entities grapple with vast volumes of sensitive data, AI-driven solutions provide a welcome relief, transforming case management, eDiscovery, and practice management software. Navigating the data deluge, AI revolutionizes the identification and categorization of PII in extensive datasets, minimizing the risk of errors. Ensuring compliance with complex data protection regulations becomes seamless as AI automates checks, reducing the burden on legal practices and mitigating legal risks. Experience the future with PrizmDoc’s AI capabilities, setting a new standard in identifying sensitive content and ensuring a leap towards a more efficient, secure, and compliant legal practice.

PrizmDoc Viewer HTML5

Adding viewing and document conversion capabilities to an application can be a daunting task, especially when a development team is facing resource constraints and a tight schedule. That’s why many developers turn to API-based viewing integrations like Accusoft PrizmDoc Viewer instead of building those features from the ground up. By leveraging the versatile power of HTML5 viewing, they can quickly expand software capabilities without having to rethink the basic framework of their products.

What’s Under the Hood of PrizmDoc Viewer?

To understand how PrizmDoc Viewer goes about rendering documents in a web application, it’s helpful to take a closer look at its underlying architecture. There are two primary components that work in concert with the application’s web server: the HTML5 viewer and the backend.

The HTML5 viewer is integrated to run in the browser, typically via a web page or portal that serves as the front-facing aspect of the application. This is where document content is rendered as SVG elements. Since the viewer uses HTML5 to display content, it isn’t dependent upon any specific word processing software or imaging program.

Most of the heavy lifting is handled by the PrizmDoc Viewer backend, which consists of the PrizmDoc Server and PrizmDoc Application Services (PAS). PrizmDoc Server is the core computing component. It performs the actual conversion process to convert document pages to SVG, but it doesn’t have any permanent storage. Converted content and annotation markups are instead stored in PAS. The PAS component primarily handles long-term storage and hands files off to the server for conversion or processing. 

Critically, PAS also has privileged access to other storage locations used by the application, such as file systems or databases. This allows it to easily retrieve source documents and hand off tasks to the server.

The Role of the Web Application

The web application server sits between the HTML5 viewer component and the backend component. It functions as a reverse proxy that relays requests between the two, passing content requests from the viewer to the backend and then delivering converted SVG content from the backend to the viewer.

PrizmDoc Viewer doesn’t actually work with the source documents in the application’s storage. They remain safely unaltered while the backend generates a converted version for viewing and annotation. The web application typically only makes REST API calls to PAS. Background conversion that doesn’t involve the viewer, however, can be performed by making a direct call to PrizmDoc Server.

Making the HTML5 Magic Happen: Viewing a Document

When the web application has to open a stored document for viewing, each component of PrizmDoc Viewer plays a special role in the process. Everything begins with the web application sending a request to PAS to create a new viewing session. How this session is created depends upon how the backend is deployed. In most cases, it will be self-hosted as part of an on-premises deployment or through PrizmDoc Cloud services.

Once that session is created, PAS generates a new viewing session ID and passes it back to the application. All of this happens before any conversion or viewing begins, but the application can begin rendering to the HTML5 viewer by configuring it to use the viewing session ID. This brings up the viewing UI immediately, which will ultimately save time as the document is prepared.

The web application then uploads a copy of the source document to PAS, which can be in any number of formats supported by PrizmDoc Viewer. As soon as PAS receives the document, it begins handing off pages to PrizmDoc Server for conversion to SVG. Since pages are converted one at a time, PrizmDoc Viewer is able to open and view documents in the browser before the entire file is converted. That means less time is spent waiting around for large documents to be prepared for viewing.

As soon as the HTML5 viewer loads in the browser, it begins proxying requests to PAS through the web application for the first pages of content. Once the converted SVG content is available, PAS hands it back to the web application, which then passes it along to the HTML5 viewer, which displays that content in the browser. Additional pages are delivered as they’re ready, and the viewer may make subsequent requests as the user continues to interact with the document.

While the viewing process involves several steps, it is typically performed so quickly that the end user doesn’t experience any significant delays. Larger documents may take more time to render as SVG content, but even in these cases, PrizmDoc Server’s ability to render and deliver each page to the HTML5 viewer as it becomes available allows users to begin viewing documents within their browser right away.

Enhance Application Viewing Performance with PrizmDoc Viewer

As an API-based HTML5 viewing solution, PrizmDoc Viewer can be integrated into most web-based applications to support a broad range of file formats. Developers can use its annotation, redaction, document comparison, and conversion capabilities to deliver a full range of document management tools within their software platforms rather than having to build them from scratch.

To see how PrizmDoc Viewer will function in your application environment, sign up for a free evaluation trial. We provide ready-to-run Docker images in addition to installers for Windows and Linux. 

 

excel spreadsheet formulas

Document management solutions are well-equipped to handle common file types like DOCX and PDF format. When developers are building software to manage workflows and make files accessible through web-based applications, they can typically turn to HTML5 viewers and document processing integrations to provide the document features their customers require. 

When it comes to Microsoft Excel spreadsheets, however, there are some additional considerations that often create difficulties. One aspect of XLSX workbooks that deserves special attention is how applications manage, secure, and control spreadsheet formulas.

Securing Proprietary Formulas

Many financial services and insurance organizations depend upon proprietary information like specialized, unique formulas to provide their customers with beneficial insights. Insurance underwriters, for example, may have a special calculation they use when setting their rates, while an investment firm likely has a risk formula that helps them to identify best opportunities for clients.

Such formulas are often the product of many years of work and experience in the industry and are inexorably linked to a firm’s service offerings. If customers or competitors were able to access those formulas directly, they may be able to adapt them for use elsewhere without the original firm’s permission.

Spreadsheets pose a unique challenge in this regard because the typical workbook contains many formulas, some of which may contain proprietary information. This may not be much of a problem for internal use within an organization, but it could become a problem the moment those spreadsheets are shared with someone outside the organization or with someone who lacks the proper authorization. While cells in an Excel spreadsheet can be hidden or password protected, these protections can potentially be breached by someone familiar with Microsoft security features once they’ve downloaded the file.

Maintaining Spreadsheet Control

Anyone who has accidentally deleted or changed some portion of a spreadsheet formula in a single cell and wrecked calculations throughout a workbook knows how important it is to keep those formulas locked from unnecessary editing. If the workbook is being shared with multiple users, the odds are good that someone will make a mistake somewhere, potentially altering important calculations and providing a misleading portrayal of the available data.

The challenges are even greater when spreadsheets are shared online. A public facing Excel spreadsheet used to make financial calculations, for instance, could be rendered useless if someone were to alter (knowingly or unknowingly) the formula information in a cell. And if the workbook is downloadable, undetected formula changes could be passed on with the file, making it difficult to know which copies of the workbook are accurate and which ones contain errors. 

Protecting Spreadsheet Formulas with PrizmDoc Cells

Developers have long faced two choices when it comes to managing spreadsheets within their applications. One option is to manage the XLSX files themselves while depending upon Microsoft Excel to actually open and view the spreadsheet. While this approach maintains the full functionality of Excel, it creates serious control issues as the user is required to download the file from the secure application environment. If they make changes, they can then upload the file again, creating a potential for version confusion.

The other option is to keep the spreadsheet in application storage, but render it as a print preview in an HTML5 viewer. While this approach certainly protects spreadsheet formulas, it’s also little more than a static view of a spreadsheet, which is only useful if an existing spreadsheet needs to be reviewed and not interacted with in any way.

Accusoft’s PrizmDoc Cells is an API-based integration that allows developers to securely embed XLSX files within their web-based applications while retaining the ability to edit and interact with them. A financial planning workbook, for instance, could be embedded within the browser to provide much of the basic functionality users are familiar with from Excel. This makes it ideal for applications that require a balance of usability and security, such as a digital vault that keeps vital financial data within a secure environment.

When uploading an XLSX file for display using PrizmDoc Cells, there are a few options that make it easy to protect valuable spreadsheet formulas.

Formula View/Edit Settings

There are two formula options that developers can easily adjust based on the needs of the application or the use case of the customer. The “canView” setting determines whether or not formulas are even sent to the browser for viewing. If set to “false,” any formulas within the spreadsheet will be automatically hidden. The “canEdit” setting either gives or denies users permission to edit or enter formulas. Hiding formulas is ideal for situations involving proprietary information, while editing restrictions are more suitable for internal workflows designed to reduce human error.

Value-Only Upload

When an XLSX file is uploaded, all cell values and formulas are normally preserved. This allows the workbook to retain the same basic functionality it has in Excel. For situations where the spreadsheet’s values need to be shared, but no changes are being made to the formulas, PrizmDoc Cells can upload workbooks as “values-only,” which removes all formulas from the embedded version. After being uploaded in this way, the spreadsheet can then have individual cells redacted as needed to further enhance security. Text can be placed in redacted cells to indicate why values were removed.

Enhance Your Application’s Spreadsheet Functionality

As an API integration, PrizmDoc Cells integrates smoothly into any web-based application. It also interfaces seamlessly with PrizmDoc Viewer to provide a broader range of viewing features when it comes to spreadsheets. Whitelabeling features allow developers to customize and rebrand the UI as part of their own software solution.

Find out how easy PrizmDoc Cells makes it to manage spreadsheets within your application by downloading a free trial. It’s the best way to get a close up view of how this powerful integration performs within your dev environment.

Question

Can I move a license from one machine to another?

Answer

Currently there is no way to move a license key from one machine to another. Once a license key is tied to a machine, you can remove it from the machine (using the License Manager or manually deleting it from the registry), but that will not credit a license to your account. That said, if you run into an issue where you have licensed a machine by mistake, please contact info@accusoft.com as they will work with you. We understand this is a current limitation of our licensing system and don’t want you to be adversely affected. Also, typically a development license comes with three “keys”, so if you want to license an additional machine you most likely can. Run and log in to the License Manager and you can see the number of license keys remaining.

Question

With a fully-running PrizmDoc environment (version prior to v10.5), I’m noticing times where the system becomes unresponsive. That is, at some point, it no longer processes requests being made to the backend and I have to restart PrizmDoc in order to alleviate it. What could be causing this?

Answer

Prior to version 10.5, PrizmDoc used ProxyServer as its image processing system. Our Development Team eventually began seeing that the ProxyServer exhibited architectural problems that lead to a multitude of issues, such as unresponsiveness.

Starting in version 10.5, the Development Team created the Prizm Content Connect Imaging Service (PCCIS), which is far more stable.

To resolve this issue we suggest upgrading to the latest revision of PrizmDoc. Please see the product page for more information found here: https://www.accusoft.com/products/prizmdoc/overview/

ISVs, corporations, and SaaS solutions all have the same immediate digital transformation needs in common; they all need to bring forth technologies that improve both the customer and employee experience. The challenge is building and launching these technologies quickly, efficiently, and within a scalable, sustainable model. Product managers and development teams are all evaluating options to assist with meeting stakeholder demands for quality, while also meeting the need for speed to market. Enter the hidden value of third-party software integrations.

The secret life of APIs

Digital transformation is an ever-increasing priority for all businesses as well as an initiative that is seeing a surge in funding. In a recent State of the API Economy 2021 report by Google, 56% of enterprise leaders say APIs help them to build better digital experiences and products. Leaders are also finding value in focusing on an API-driven strategy, and 52% say APIs accelerate innovation by enabling partners to leverage digital assets at scale. 

How API Integration Works

At a very simple level, an API consists of code that allows two separate technology systems to communicate and interact with one another. It functions as a translator and messenger; delivering user requests and data from one system to a completely separate system. This effectively allows an application to utilize the features and data of other applications without having to build out that functionality from scratch.

For example, the Uber ride-sharing app connects customers to available drivers within a specific area. It does this with a combination of smartphone geolocation and accurate maps, but the Uber app doesn’t have mapping capabilities. To get those features, it connects to Google Maps by way of an API that allows the Uber app to access the relevant navigational data and use it to connect customers to drivers.

Another key function of APIs is their ability to automate key processes and connect legacy infrastructure to newer technology systems. Data can be collected in one system, for instance, and “pushed” into another system automatically. This not only eliminates the complicated (and error-prone) task of manually transferring data between different systems, but also allows users to build a workflow in an application they’re already accustomed to, without having to learn an entirely new system. 

More importantly, since APIs allow newer technologies, devices, and legacy applications to talk to each other, they provide firms with substantial flexibility when it comes to adding new platforms. Purchasing new software doesn’t mean throwing out existing tools, which significantly reduces the risks associated with technology investments and upgrades.

The cost savings with API Integrations

When you purchase a third-party API integration you’re gaining more than additional functionality for your application. You also gain access to a team of developers and support specialists who are here to assist you from POC to deployment and beyond.  Leaning on the specialization of a third-party vendor allows your developers to focus on application enhancements and release your product to market faster. Ultimately saving your company valuable development time and realizing product revenue faster.

Interested in learning more?

Could your business benefit from an API led digital transformation strategy? Schedule a consultation today, to learn more about the document management API integration options available from Accusoft.

HubSync needed a white-label solution to help them capture secure taxpayer data from multiple sources in a single workflow. Using the Docubee API, they were able to launch quickly and get the support they needed to ensure their product was successful.

PrizmDoc Hybrid Viewing

Today’s customers expect more out of their software applications. No one wants to waste time juggling between multiple platforms every time they need to open a simple document. They want applications to provide a streamlined user experience that allows them to interact with various file formats quickly and easily, with minimal performance issues.

Most software developers turn to third party integrations like Accusoft’s PrizmDoc to incorporate document processing capabilities into their applications. Since developers are frequently pressed for time and resources, it doesn’t make sense to build document lifecycle features from scratch when they can easily deploy a proven, scalable solution that provides all the tools they need. An API-based integration like PrizmDoc can quickly add industry-leading viewing, editing, collaboration, conversion, and assembly features to an application, which allows developers to focus on other features that will help their software stand out from competitors.

Pros and Cons of Server-Side Viewing

All that document processing power has to come from somewhere, and in the case of solutions like PrizmDoc, most processing is handled by a dedicated server. The server may be self-hosted on the developer’s local infrastructure, a dedicated private cloud, or a public cloud that’s shared by multiple customers.

There are plenty of advantages to this model. Scalable infrastructure is available for the heaviest document processing workloads, but customers only have to pay for the resources they actually use. A dedicated server also makes it easy for applications to manage document storage and avoid version confusion.

Server-side resources can also pose challenges for some applications. If the server is constantly being used to prepare and render documents for viewing, customers may find themselves utilizing more processing resources than expected. Scaling viewing capabilities for multiple users can increase resource usage because each session places additional processing requirements on the server, especially if users need to make annotations, redactions, or other alterations to files.

Viewing multiple, lengthy files server-side can also impact performance. PrizmDoc’s HTML5 viewer, for instance, converts and renders documents in SVG format. While this format offers outstanding quality and flexibility, load time may take longer and it also takes up server storage space.

Introducing PrizmDoc Hybrid Viewing

The new PrizmDoc Hybrid Viewing feature solves these challenges by offloading the processing work for viewing in PDF format to the end user’s device. This is a hybrid approach between server-side processing and client-side processing, with all of the viewing capabilities handled by the client-side device. This drastically reduces the server resources needed to prepare files for viewing, which translates into cost saving and improved performance. Since all viewing is handled by the browser on the client-side device, Hybrid Viewing offers much greater responsiveness for a better overall user experience.

For files not already in PDF format users can take advantage of the new viewing package which converts any file format to PDF. This not only allows documents to be viewed more quickly in the future, but also reduces server load and storage requirements.

5 Key Benefits of PrizmDoc Hybrid Viewing

The Hybrid Viewing feature works within PrizmDoc’s existing viewing package infrastructure, making it a simple and streamlined solution for both new and existing customers. Shifting viewing processing from the server to client-side devices provides applications with several important benefits.

1. Cost Savings

Transferring the processing work required for document viewing to an end user’s device reduces server workloads. Since customers pay for the server resources their applications utilize, minimizing server requirements for viewing can deliver significant cost savings over time.

2. Better Resource Management

All file types can be used with this new Hybrid Viewing feature. The new PDF viewing package pre-converts all file types into PDF only, rather than creating SVG files with large amounts of data. This saves both processing time and storage resources. Developers can take advantage of this flexibility and resource savings to implement additional application features that leverage PrizmDoc’s capabilities.

3. Increased Productivity

Shifting document viewing workloads to client-side devices allows applications to process, view, and manage multiple documents faster. This helps end users to do their jobs more efficiently and get greater value out of their applications.

4. Enhanced Performance

Hybrid viewing not only requires fewer resources, but files can be viewed and manipulated faster with enhanced responsiveness. For applications that need to provide editing features such as annotations, offloading processing to client-side devices minimizes load times and lag for a better overall user experience.

5. Scalable Document Viewing

By handling document viewing capabilities on local devices instead of the server, scaling capacity becomes far less resource intensive. File conversion only needs to be performed once, so adding more users doesn’t increase the overall server workload.

What Hybrid Viewing Means for PrizmDoc Users

The new Hybrid Viewing feature allows PrizmDoc users to get more out of their integration than ever before. For customers who have long relied on desktop-based PDF.js viewers due to concerns about server workload or performance, the Hybrid Viewing feature provides a localized viewing solution that streamlines their tech stack and leverages the full capabilities of PrizmDoc. By minimizing server requirements, developers can unlock the potential of their applications to scale their document lifecycle features without worrying of runaway costs.

Hybrid Viewing is available for PrizmDoc Server v13.15 or greater and can be used for self-hosted, private cloud-hosted, or public cloud-hosted deployments. To learn more about how it can provide the flexibility your application needs to scale with user demands, talk to one of our PrizmDoc specialists today.

Over the last few years, codemantra has focused on developing document processing capabilities to enhance its core document management systems. The multifaceted collectionPoint platform leverages the power of machine learning to extract data and integrate with business applications such as LMS solutions, ERP software, and CRM systems. However, in order to maximize collectionPoint’s document flexibility, codemantra needed the right integrations to manage and edit PDF documents. Rather than devoting additional development resources to building a viewing solution in-house, the codemantra team instead conducted a thorough review of multiple third-party integrations to find the ideal match for collectionPoint. Find out why they chose PrizmDoc® for Java, formerly VirtualViewer®.

ArkCase was looking for a viewing technology that would allow for in-application viewing and reduce dependencies on external applications.  Learn why PrizmDoc® for Java, formerly VirtualViewer®, was the right fit.