DocEdge Update – SmartClient 2010, Q1

March 18, 2010 1 comment

SmartClient Enhancements / Defect Fixes

Defect Fixes

  • Issue involving route and utility toolbar options not appearing
  • Issue that prevents multiple content types from routing from same queue.  Transitions now handle if fields do not exist.
  • Users may search for documents using a wild-card character as the first character of the search criteria.
  • TeleForm Batch Import – The issue regarding the “Parent Content ID” parameter has been resolved.  The system now saves the selected option correctly.
  • Search – The system also allows you to delete all items in the hit list without any issue.

New Features

  • Advanced audit data storage – The system can be configured to maintain content version information to an external database.  This allows us to run generate reports on a specific document and display revision history.
  • Archive Report – Users may run an Archive report to display document revision history.  If document has not been setup to be archived, then the SmartClient will display a “No archive report for this document” message.
  • Content Browser Read Only option – A content type may be configured to be read-only by selecting the “Read-Only” option under the “Search API Controller” parameter.
  • External Data Sync – The system may be configured to store data to an external database.  A content type may be linked to an external sync database by setting the “Connection” parameter of the content type.  The external database must have the required data tables to hold the fields of the content type.  These tables may be generated by using the a new feature in the DBUtil application.
  • Export – The SmartClient allows users to export documents to their desktop as multi-page PDF or TIF files.  Click here for more information regarding this feature.

ProcessService Enhancements / Defect Fixes

New Features

  • API DLLs no longer need to be placed in the “c:\WINDOWS\system32” directory.  Now, they can be placed in the run directory of the process service application.
Categories: Uncategorized

API: Example custom capture controller

December 11, 2009 Leave a comment

The DocEdge API allows you to customize the behavior of your work queue by creating a capture controller.  A capture controller is a .NET class that extends the Edge.DocEdgeUI.Capture.CaptureController object.  This article demonstrates how to:

  • Implement custom business logic.
  • Hide unnecessary fields.
  • Disable fields to create Read-only fields.
  • Hide or un-hide the Submit, Attachment, Email or Export buttons.
  • Automatically convert fields to upper or lower case.
  • Enable the Math feature to allows users to perform simple mathematical functions.
  • Disable drop down box text editor to only allow drop down values.
  • Enable the static feature to minimize load times for resource intensive look ups.
  • Configure a grid to stretch to fill the with of the screen.
  • Set the column width of a grid field.
  • Add functionality to the hot keys F5,F6, F7 and F8.
  • Add functionality by adding custom utility buttons.
using System ;
using System.Windows.Forms;
using Edge.DocEdgeUI;
using Edge.DocEdge.Api ;
using Edge.DocEdge.Api.Capture ;
using Edge.DocEdge.Api.Workflow ;
using Edge.DocEdge.Util ;
using Edge.DocEdge.Struct ;
using Edge.DocEdge.Validation ;
using Edge.DocEdge.Validation.Source ;
using Edge.DocEdge.Authentication ;
using Edge.DocEdgeUI.FieldView ;
using Edge.DocEdgeUI.Capture ;
using Edge.DocEdge.Capture ;
using Edge.DocEdge.Workflow ;
using Edge.DocEdge.Archival;
namespace TestAPI
{
    public class DocCap : Edge.DocEdgeUI.Capture.CaptureController
	{
        ///
        /// The Default constructor
        ///
	public DocCap()
	{
	}

        ///
        /// Hides or un-hides the submit button.  This is useful for work queues
        /// that should not user the default submit feature.
        ///
        public override bool SubmitVisible
        {
            get
            {
                return true;
            }
        }

        ///
        /// Hide or un-hide the attachment button.
        ///
        public override bool AttachmentVisible
        {
            get
            {
                return true;
            }
        }

        ///
        /// Hide or un-hide the email button.  Note: This will not allow
        /// users to access this feature if they are not granted the appropiate
        /// privilege from the management console.
        ///
        public override bool EmailVisible
        {
            get
            {
                return true;
            }
        }

        ///
        /// Hide or un-hide the export button.  Note: This will not allow
        /// users to access this feature if they are not granted the appropiate
        /// privilege from the management console.
        ///
        public override bool ExportVisible
        {
            get
            {
                return true;
            }
        }

	public override IContentDisplayProperties ContentDisplay
	{
  	    get
            {
                IContentDisplayProperties prop = base.ContentDisplay;

                // This is the an example of how to set the character casting
                // for a field.  Any characters in this field will
                // automatically be converted to uppercase.
                prop["INVOICE"]["INVOICE_NUMBER"].CharacterCasing
                            = CharacterCasing.Upper;

                // This is an example of how to hide a field.  The user will
                // not see this field on the field group.  You may still access
                // this field using the API.
                prop["VENDOR"]["REMIT_CODE"].Visible = false;

                // This is an example of how to disable a field.  The field
                // will be visible.  However, it will not be editable.
                prop["VENDOR"]["VENDOR_NUMBER"].Enabled = false;

                // The math property allows the user to perform
                // simple calculations in the text editor.  For example,
                // if the user enters "100.25+30" the system will convert
                // the value to 130.25.
                prop["CHARGES"]["FREIGHT_AMOUNT"].MathEnabled = true;

                // This property allows you to disable the text editor of a
                // combo box.  This forces the user to select an item from the
                // dropdown list and prevents any free-form data entry.  This
                // is useful if the captured value will ALWAYS be selected from
                // the dropdown list.
                prop["VENDOR"]["VENDOR_NAME"].ComboProp.EnableTextEditor = false;

                // A field may be marked as static.  A static field will be
                // created by the SmartClient only once.  This is useful for
                // dropdown boxes populated by time-consuming lookups.
                prop["VENDOR"]["VENDOR_NAME"].Static = true;

                // The fill method set to "Stretch" instructs the SmartClient to
                // stretch a grid to fill the width of the screen.  Setting the
                // fill method to "Compress" will collapse the to use the
                // minimum amount of space.
                prop["LINE_ITEMS"].FillMethod = GridFillMethod.Stretch;

                // The grid column width property allows you to set the
                // minimum column width in the grid.
                prop["LINE_ITEMS"]["ITEM_NUMBER"].GridColumnWidth = 200;

                return prop;
            }
	}

        ///
        /// The load method is called when the document or batch is loaded.
        ///
        /// A validation result object.
        public override ValidationResult Load()
        {
            return base.Load();
        }

        ///
        /// This method is called when each field receives focus.
        ///
        /// The field event argument.  This contains the
        /// field object associated with the event.
        ///
        public override ValidationResult FieldGotFocus(FieldEventArgs e)
        {
            return base.FieldGotFocus(e);
        }

        ///
        /// This method is called when a field loses focus.
        ///
        /// The field event argument.  This contains the
        /// field object associated with the event.
        /// A validation result object.
        public override ValidationResult FieldLostFocus(FieldEventArgs e)
	{
            // Get the default validation result
            ValidationResult result = base.FieldLostFocus(e);

            // Ensure the vendor name is not blank
            if (e.Field.FieldName == "VENDOR_NAME" && e.Field.Value == "")
            {
                // The message will be presented to the user
                result.Message = "Vendor name is required";

                // Set the status code to GeneralError to indicate an issue.
                result.StatusCode = ValidationStatusCodes.GeneralError;
            }

            return result;
	}

        ///
        /// This method is called when the field group receives focus.
        ///
        /// A validation result object.
        public override ValidationResult FieldGroupGotFocus()
        {
            MessageBox.Show("Field Group Got Focus: "
                  + Manager.FieldGroup.GroupName);
            return base.FieldGroupGotFocus();
        }

        ///
        /// This method is called when a field group loses focus.  Validations
        /// that need to compare/contract multiple fields should be placed in
        /// this method.
        ///
        /// A validation result object.
        public override ValidationResult FieldGroupLostFocus()
	{
            ValidationResult result = base.FieldGroupLostFocus();
            return result;
	}

        ///
        /// This method is called when the document or batch is
        /// about to be unloaded.
        ///
        ///
        public override ValidationResult Unload()
        {
            return base.Unload();
        }

        ///
        /// This method allows you to add custom functionality for
        /// the HotKeys F5, F6, F7 and F8.
        ///
        ///
        public override void ProcessHotKey(HotKeys Key)
	{
		switch( Key )
		{
			case HotKeys.F5:
			    MessageBox.Show( "Pressed F5" ) ;
			    break;
                	case HotKeys.F8:
	                    // The prompt note method displays a dialog
                            // to add a note to the passed content ID.
                	    DocEdgeUIAPI.PromptNote(
                                    this.Manager.CurrentPage.ContentID);
                    	    break;
		}
	}

        ///
        /// This method allows you to add custom utilities to
        /// your capture screens.  The SmartClient will call
        /// this method and pass the name of the selected utility.
        ///
        ///
        public override void ProcessUtility(string Name)
        {
            // In this example, a utility named "PO Search" has
            // been configured.
            if (Name == "PO Search")
            {
                // This is an example of performing a search.  This will
                // generate a search request and display the search results
                // to the user.
                IContent content = Manager.CurrentPage;

                // Create the search request
                IRetrievalRequest request = DocEdgeAPI.CreateEmptyRequest();

                // Add purchase order content type
                request.ContentTypes.Add(DocEdgeAPI.GetContentType(3));

                // Create a search criteria for the po number
                IIndex poNumIndex = DocEdgeAPI.CreateIndex("PO Number");
                poNumIndex.Value = content.GetFieldGroup("INVOICE")
                      .GetField("PO_NUMBER").Value;

                // Add your created index to the search.
                request.Indexes.Add(poNumIndex);

                // Send the user to the search screen.
                IRetrievalResult result = DocEdgeAPI
                       .ExecuteRetrievalRequest(request);
                this.Manager.DisplayRetrievalResult(result);
            }

            // In this example, the utility will run a configured report.
            if( Name == "Work Item Report")
            {
                DocEdgeAPI.RunReport(1);
            }
        }
    }
}
Categories: API

Enhancement: Export and Attachment features from SmartClient

December 10, 2009 2 comments

The document capture and search screens have been enhanced to include an export feature.  This export feature allows the users to save the document to their desktop as either a PDF or TIF file.  The new enhancements will be part of the DocEdge SmartClient 2010, Q1 release.

Export from Document Capture

The document capture screen can include a button to prompt the user where to save the image file.  User may browse and select the location to save the file.  The file name defaults to the name of the document.  Users may select to save the image as either TIF or PDF.

Also, attachments can also be managed as from the Search screen.  This allows you to attach image files saved on your local computer into the archive.

Export from Search

The search screen also provides access to the export feature.  This functions exactly the same as the export feature from document capture.

Export: Search

Export from Search

Configuration

You can limit access to the export feature from the management console.  Configure the group you want to grant access to the export feature.  Click the “Export” column as seen below to grant export privileges.

Export: Configuration

Configure group to access export feature

DocEdge Version Naming

December 10, 2009 Leave a comment

Starting with the first release of 2010, DocEdge point releases will have a new naming convention.  Each release shall be formatted as follows:

DocEdge <product name> <year>, <quarter>[.<sub release>]

This new naming convention will allow us to discuss versions in a more understandable format.  For example, the first release of the SmartClient shall be named:

DocEdge SmartClient 2010, Q1

The sub revision of “.1” is assumed for the first release of the quarter.  If we need to release a minor revision during the first quarter, then we will include a sub revision.  For example:

DocEdge SmartClient 2010, Q1.2

Any updates for each release shall be updated to this site.

Categories: DocEdge Releases Tags:

Dead trees can be expensive

September 30, 2008 1 comment

Decades ago consultants told us about the dream of the electronic paperless office. It’s cheaper. It’s easier. It gives you and your employees more flexibility. This paperless utopia has yet to be realized – but we’re a lot closer. Much or our daily work is electronic based. Yet, many of us still spend a tremendous amount of time shuffling, stamping, and filing dead trees.

Paper may never go the way of the Dodo bird. However, there are solutions that can help bring your office a few steps closer to the “paperless dream”. I recently found read an article on Forbes.com describing how small or mid-sized business may find it easier to make the transition (Here is the link to the article).

Here are a few bullet points to consider:

  • Small and mid-sized businesses have advantages over lager businesses when it comes to moving to paperless. There is less bureaucracy. They can be much more nimble with their IT projects.
  • Electronic is faster. Accounts payable invoices may require several weeks to process. Especially, if the invoice needs to be approved before payment or a discrepancy is found against the purchase order. Shuffling paper takes time. An electronic process can reduce the lifecycle of the payment process.
  • Don’t forget about security. A document scanned and password protected on your server is much more secure than sitting on your desk.
Categories: Articles

Documents at your fingertips

January 14, 2008 4 comments

I found a great article that describes the concept of document management and its impact on your work place.  The article was originally posted on an Irish news site, ThePost.IE. The entire article is included below.  You can see the original article here.

Documents at your fingertips
13 January 2008
Paper may still dominate business processes, but computer document management systems make it increasingly easier for the appropriate users to access important information, writes Dermot Corrigan.

The advance of information technology has not diminished the importance of documents to Irish businesses. Managing an increasing number and type of documents remains of huge importance for business success.

“Document management is the process for capturing, storing, indexing, routing and managing key business documents so that they can be processed and accessed when needed by the appropriate users,” said Garret Pearse, product manager with SoftCo.

The term document no longer refers just to sheets of paper, according to Stephen Tunney, managing director of Adest.

“Document management systems are used to store a range of different document formats,” said Tunney. “Essentially they can store any document coming into your organisation. You can scan paper documents, and also capture PDFs, JPGs, drawings, computer files. You can store all kinds of things in their native format within a single system, accessible through a single interface. It looks like the paper copy, you can view it, print it, fax it or e-mail it.”

Document management fits within the wider area of information or content management, said Richard Moore, business group lead, information worker, Microsoft Ireland.

“We would think of document management as part of a broader information management challenge that most organisations have, making sure things are held and accessed appropriately, and in a way that is easy for people to get a hold of,” said Moore.

There are two main ways in which organisations and businesses use document management systems, according to Andy Jones, general manager and director for Xerox Global Services in Europe.

“First there are transactional opportunities. Companies that want to digitise supplier invoices will implement a new process underpinned by a bit of technology and from this point on every invoice that comes in is digitised,” said Jones. “Other organisations have a lot of archival information that is important to their business and they look to digitise all that.”

Drivers
Nigel Ghent, UK and Ireland marketing director, EMC Documentum, said that document management systems are usually purchased because of an outstanding business need.

“People do not wake up in the morning thinking we need to manage content better or automate our processes,” said Ghent. “Maybe there is a EU directive to adhere to, or a requirement to drive cost reduction in a line of their business. We talk to customers and come back to them with a solution that can solve those problems.”

Tunney said the primary reason for businesses to adopt document management technology was to boost productivity by speeding up processes.

“For example, we have a number of clients making deliveries all around the country every day,” he said.

“They have paper dockets to prove every delivery has taken place, they are scanned in the depots and automatically sent to the system in Dublin, so their credit control department knows that those goods have been delivered.”

Blaik said organisations with staff that need access to detailed information on clients or products also derive impressive productivity benefits from document management systems.

“When somebody rings up and makes a complaint, rather than someone having to go off to a filing cabinet and trying to find a letter, or going to a warehouse off site, you can easily search and retrieve that information,” he said.

Blaik said tightening compliance regulations were leading to quicker adoption of document management systems.

“Compliance is a huge issue,” he said. “Not just around regulations such as Sarbanes-Oxley; there are also many different EU and individual country directives about how long companies must retain, and make available, customer invoices and statements.”

Aidan O’Neil l, chief executive of Docosoft, said document management systems could also help businesses lower their storage costs.

“Some industries have to keep documents five, seven, up to 20 years, but the paper now does not have to be kept on site,” he said.

“Some companies would store documents in other locations and use couriers to bring them in when needed, but then there is a cost to the company every time they want to access it. Electronic documents do not replace the paper, but they can access the electronic copy whenever they want.”

O’Neil l said document management systems allow multiple users, in different locations, to view the same document at the same time.

“Many people can access an electronic document at one time, whereas if you have a paper document you have to photocopy it or move it,” said O’Neil l.

Tunney said document management systems made it easier for companies to avoid losing vital information. “Even if something is misfiled, it can be searched for using the content of the document,” he said. “If that was misfiled in a paper-based environment there might be a massive search to find it.”

Sectors
Document management systems come in a variety of forms, and are used in different ways in different sectors, including financial services, retail, manufacturing and local government, according to Jones.

“In the financial services sector, which is very document-driven indeed, companies are looking at how they handle incoming applications, claims, forms, enquiries from customers, how they receive that, digitise it and then run it through an electronic workflow process to make the incoming part of the process more effective,” he said.

“There is also an outbound part of the process, with lots of physical documents sent to customers. Content management systems can make that more efficient and lower the costs,” said Jones.

“In the retail area the big thing is supply-chain management. They are buying lots of things, so they are receiving lots of invoices from suppliers, so we look at how we can digitise these processes – receive physical documents, scan them, deliver them to the accounting operation and accelerate the accounts payable area.

“Manufacturing companies on their product and technical documentation, if I am producing a car or a piece of equipment, how can I help their customer understand the manuals more effectively, keep them updated more effectively, translate the documents and make them available on a global basis in a consistent way,” said Jones.

“There are huge opportunities for document management in central and local government, particularly with recent initiatives around making information more readily available to the public,” said Jones.

“The information can be made more transparent and more available using document management technology and services.”

Business processes
Blaik said organisations should understand how their documents fitted into their business processes before choosing a document management solution.

“Understanding how a document is accessed and used is crucial to understanding how the content management system can help,” he said. “Different people within one organisation can have different needs for one document. For example, when you put in a tax return, that document might be retrieved and used by many different people, so understanding the process and workflow is crucial when implementing the right system in the right way.”

Moore said the latest integrated document management systems were helping companies streamline and improve their business processes. “You probably will not want to change everything, but if you change two or three key things, you can get a much higher rate of return,” he said.

Tunney said some clients used document management systems to manage every single document that arrived into the organisation.

“As the post comes in the morning they scan it and electronically route it to the appropriate people within the organisation,” he said.

“That is where you are really getting great productivity and much faster delivery and accountability of what has come into the organisation.”

Intelligent recognition of the information within documents can make processes more productive, said Blaik.

“Rather than someone having to look at a piece of paper to see what boxes have been ticked, we can automatically push the relevant information to the right person to move things quickly to the next stage,” he said.

O’Neil l said some organisations preferred to purchase individually tailored document management systems that were built specifically with its business processes in mind.

“We tailor the solution to the company, and do not promote document management tools as such,” he said.

“We would know how the business works, for example insurance claims, documents and proposals. We would build business processes around that and supply the document management or workflow tools on the back of those. We would also integrate them into existing software the company is al ready using.”

Nuts and bolts
There can be a number of various hardware and software elements in an integrated content management solution.

“It depends on what the client is looking to achieve,” said Blaik. “If they are looking to produce imaging, they will need an input management solution. If they are looking to take paper away from a process, and automate that process, they are talking about automation and routing of documents, and that is process management. Information management can then make the right content available to the right person in the right way.”

Tunney said many document management systems did not require the purchase of specialised scanning equipment.

“Clients use desktop scanners or multi-function devices,” he said. “Mid range systems can scan at rates of 20 to 70 pages per minute now. As the documents are scanned they are stored on the server and can be accessed from the clients’ PCs. We would also have clients who scan their documents and make them available for viewing on the web. For instance the CAO would capture student application forms and make them available to the relevant university admissions departments via the web.”

To ensure easy retrieval, documents stored electronically are tagged with information including document name, type, origin, date created and the person who created it. Jones said it was important to ensure that this information is inputted correctly.

“If you are putting in poor information, there is no pixie dust inside these systems that make it better,” he said. “But if you design these systems properly, they can allow you to do a lot of error checking as you are entering the information.”

Pearse said the latest systems also allowed users to search inside the documents stored electronically.

“Advanced optical character recognition (OCR) and powerful full text indexing functionality can be used to easily and efficiently capture unstructured data,” he said. “Users can now carry out a Google-like search to find any unstructured data relating to their search. They will then be presented with any matches that they have sufficient permission to view.”

Even more sophisticated systems can also pull together and link documents and information, which at first glance may appear very disparate, according to Jones. “In a situation where there are large numbers of documents, including paper, e-mails, electronic documents and we have some technology that lets users search for links and inferences between what may seem to be completely different documents,” he said.

Security can be a huge issue for document management systems and policies, said O’Neill.

“Security is very important,” he said. “One of our systems encrypts and compresses the document on the file server itself. There is also an audit control on the system, so that every time the user looks at the document it is audited. There is a whole log of when it was accessed, who accessed it and was it changed or moved. If they do change it, they can check it back in as a new version.”

The full power of document management systems can only be harnessed if organisations link them with other information databases within the organisation, said Tunney.

“If you want to get the best out of your system it has to be integrated with whatever other systems your staff are using,” he said. “We would integrate with a range of accountancy software systems, so that invoices and proof of delivery dockets can be seen side by side.”

O’Neill said there can be challenges for off-the-shelf document management solutions to integrate fully with other systems.

“Sometimes the integration toolkit that comes with other products is not good enough, and it can take six months to a year to get it to integrate completely,” he said.

Costs
The costs of purchasing, installing and supporting document management systems and processes is conditional upon the size and scope of the solution required.

“The cost of systems varies from four to six figures depending on the size, complexity and number of users,” said Pearse.

Tunney said costs varied from customer to customer, but typically started at €5,000 for basic solutions, with more sophisticated systems costing €25,000 or more. Moore said a basic version of Microsoft’s Sharepoint solution was included in the standard Microsoft Small Business Server package, which is aimed at organisations with fewer than 50 PCs, while the cost of the full version is dependent on the number of users and different applications included.

The costs of digitising an organisation’s entire paper archive can be prohibitive, according to Jones, who said that it is generally not necessary to digitise everything in one go.

“It is quite expensive to scan 20 years’ worth of documents, when you might only need to access a fraction of a per cent of those over the next ten,” said Jones.

“We offer a services approach as opposed to a purely technology approach. We can take over the responsibility for their paper archive and as they need access to information from it, we digitise it for them.

“In the health sector, for example, if a particular patient record is requested, we would then digitise the whole of that patient’s record in one go, so that patient’s information is now available online.”

Jones said the service model could also be used for day-to-day document management.

“We can receive all of the incoming post for a company into one of our data centres, we will do the opening, sorting, scanning and indexing based on criteria agreed with the customer,” he said. “We can then send that information back to the customer electronically.”

Future
Moving from paper to electronic documents can be a culture shock for an organisation. Blaik said change management is key to a successful transition.

“People may be used to filing paper in their cabinet, and accessing files in a certain way on their laptop,” he said. “Taking it on piece by piece, and department by department, it makes it easier.”

Blaik said scanning documents was only a step along the way to fully digital processes.

“I cannot see there ever being absolutely no paper in business. A better way of looking at it is to consider the creation of paperless processes, for example, the insurance claims process could become a lot less paper driven. The way consumers apply for a new mobile phone is becoming increasingly paperless.”

Paper is not being replaced, however, its role is just evolving.

“The electronic systems are becoming the master archive, and paper is becoming a more work-in-progress medium,” said Jones. “Documents are printed off so that people can read them on the train, or because a legal signature is important.”

“We are not eliminating paper yet,” said Tunney. “Maybe another couple of decades down the line.”

Categories: Articles

Lawson 9.0 and Service Order Invoices

August 23, 2007 2 comments

Lawson 8.x did not accept service order invoices using their MA540 interface.  I’m glad to say that Lawson 9.0 now accepts these documents.  Here are a few tips for you:

The HANDLING CODE (record #37) typically must have the handling code of either “M” for match or “S” for service.  A purchase order may have multiple lines.  These lines may include a combination of inventory and service items.  The handling code may be “S” only if all the lines sent with the invoice are service items.  If there is at least one non-service item, then you must submit the handling code as “M”.  Lawson will reject the invoice if you send a handling code of “S” for an invoice that includes a non-service line item.

If left blank, the handling code defaults from the vendor, process level, or match company.
The invoice will enter Lawson with a status of “UNREALESED”.  It will remain unreleased until the mass release process is run (job #126).  Some companies run this job on a daily basis.

If you need any help, let me know.  I’ve been sending MA540 files from DocEdge to Lawson for years.  I’d be glad to help.

Categories: Articles, Lawson