Hi,
I have purchase order nos on some invoices. I enabled purchase order section in data form in document definition but when i run some invoices that field is still blank although it has PO number on it. How to get PO number extracted?
Appreciate help.
Comments
13 comments
Hi Sara,
If you didn't added all PO Number keywords for this language, please add them.
If you did, it can happen that from some reason PO number will not be recognized, even if you added all keywords. Solution can be to use the FlexiLayout. You will need to create static text field with all PO number keywords, and then add new character string field to search nearby that static text (usually right of keyword, or below keyword).
Best regards,
Vladimir
Hi Vladimir,
Nice to see you again. I have added keywords in admin station still they are not recognized automatically. Don't know why is it so.
Do it need PO Database also to work in admin station?
In Fexilayout, some nos are in Right position and some are below. How to define relations with PO keyword then?
Hi Sara,
To enable PurchaseOrders recognition and to setup PurchaseOrders dataset, please follow this instruction: http://help.abbyy.com/en-us/flexicapture/12/invoice_reader/ir_pomatching
For FlexiLayout topic, I hope this helps: http://help.abbyy.com/en-us/flexicapture/12/flexilayout_studio/relations
Best regards,
Vladimir
Hi Vladimir,
Thanks for suggestion. I understand the topic of Flexilayout but i want to know 'How can we define relations for one PO field which can be either in right or below position'? How can we predict that it is either of the sides so as to extract it?
Appreciate help.
Hi Sara,
You can't predict by 100%, but you can limit your field only on characters that will appear in PO Number. For example, if your PO Number contains only numbers, you will select only digits. Or if your order number contains letters in prefix, you can add letters by 30% and digits by 70%. Or if you know that it starts with "7200" and will have 6 more digits then you can add regular expression that PO number will start with 7200 and can contain only numbers and length will be 10 digits.
These are only examples, there are many combinations. First investigate how PO number is generated, and then use the example from the link I provide you earlier.
Best regards,
Vladimir
Hi Sara,
You're welcome, let us know here if you have trouble solving it.
Best regards,
Vladimir
Hi Vladimir,
When PO is absent then program searches right or below position and picks random number. How can we prevent that?
Appreciate help.
In PO character string in general tab, you can find the option as "Do not find the element if:" . Just click on add and browse and select the PO static text and from the reference element drop down list select "is not found" and add the condition.
It was just like adding the if else condition, if the reference word was found result will be displaying if else the reference word was not found the character string search will be stopped.
Hope this resolves your problem.
What I am asking is when PO Keyword is there but PO number is absent and program will search either on right position or below position then it will capture something junk character. How to prevent this?
Any workaround about this one?
Hi Sara,
We have created a simple FlexiLayout for this.
You can Use Regular expressions if you know the Numbering.
like this: (Number starts with 12 or 34)
"12"N{8}
|"34"N{8}
crutial part is to restrict your findings, that means you find the Text "Purchase Order" and near the Text must be also the PO located.....
I can not post any Picture =/
Create a Block for your PO Number
Create 2 Search elements
PurchaseOrder (Static Text)--> Search words connected to our external Database --> Search Constraints Pages "ALL" <whole page>
PurchaseOrderNumber (CharacterString) --> Use regexp + add a little bit coding in advanced pre-search relations:
Thanks Lars,
But PO Number format is not fixed to use regular expression. It can be any combination of alphabets and digits. What can we do to capture around it?
Please sign in to leave a comment.