2021:Behaviors (Property): Difference between revisions
No edit summary |
No edit summary |
||
Line 129: | Line 129: | ||
# Here we have selected a '''Content Type''', specifically the '''Content Model'''. | # Here we have selected a '''Content Type''', specifically the '''Content Model'''. | ||
# Select the '''''Behaviors''''' property and click the ellipsis button. | # Select the '''''Behaviors''''' property and click the ellipsis button. | ||
# This will bring up the '''Behaviors - List of Behaviors''' menu from which you can click the '''Add''' | # This will bring up the '''Behaviors - List of Behaviors''' menu from which you can click the '''Add''' drop-down and select ''Import Behavior''. | ||
| | | | ||
[[Image:behaviours_10.png]] | [[Image:behaviours_10.png]] | ||
Line 137: | Line 137: | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=4>Select the '''''Import Definitions''''' property and click the ellipsis button.</li> | # <li value=4>Select the '''''Import Definitions''''' property and click the ellipsis button.</li> | ||
# This will bring up the '''Import Definitions - List of Import Defintion''' menu from which you can click the '''Add''' | # This will bring up the '''Import Definitions - List of Import Defintion''' menu from which you can click the '''Add''' drop-down and select ''CMIS Import Definition''. | ||
| | | | ||
[[Image:behaviours_11.png]] | [[Image:behaviours_11.png]] | ||
Line 175: | Line 175: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=11>Select the '''''Write Mappings''''' property and click the ellipsis button to bring up the '''CMIS Update Map''' window. Here we are setting the '''''Imported''''' field to the expression <code>"InProgress"</code> which will insert it as a string in SharePoint.</li> | # <li value=11>Select the '''''Write Mappings''''' property and click the ellipsis button to bring up the '''CMIS Update Map''' window. Here we are setting the '''''Imported''''' field to the expression <code>"InProgress"</code> which will insert it as a string in SharePoint upon import.</li> | ||
| | | | ||
[[Image:behaviours_15.png]] | [[Image:behaviours_15.png]] | ||
Line 187: | Line 187: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# | # With the '''Content Model''' selected, click the '''''Behaviors''''' property then click the ellipsis button. | ||
# | # In the'''Behaviors - List of Behaviors''' window click the '''Add''' drop-down and select ''Export Behavior''. | ||
| | | | ||
[[Image:behaviours_16.png]] | [[Image:behaviours_16.png]] | ||
Line 194: | Line 194: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=3></li> | # <li value=3>Select the '''''Export Definitions''''' property and click the ellipsis button.</li> | ||
# | # In the '''Export Definitions - List of Export Definitions''' window select the '''Add''' drop-down and select ''CMIS Export''. | ||
| | | | ||
[[Image:behaviours_17.png]] | [[Image:behaviours_17.png]] | ||
Line 201: | Line 201: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=5></li> | # <li value=5>First we set our '''''CMIS Repository''''' property, then select the '''''Target Folder''''' property and click the ellipsis button.</li> | ||
# | # In '''Select CMIS Folder''' window select the '''CMIS Content Type''', in this case we choose a SharePoint sub-site document library, that represents where the documents will be exported. | ||
| | | | ||
[[Image:behaviours_18.png]] | [[Image:behaviours_18.png]] | ||
Line 208: | Line 208: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=7></li> | # <li value=7>Select the '''''Write Mappings''''' property and click the ellipsis button.</li> | ||
# | # In the '''CMIS Export Map''' window you can map your fields to corresponding value containers of the CMIS connection. Here we auto-mapped to the columns of the SharePoint document library, since they are named the same. | ||
| | | | ||
[[Image:behaviours_19.png]] | [[Image:behaviours_19.png]] | ||
|} | |} | ||
====Batch Process Export Behavior==== | ====Batch Process Export Behavior==== | ||
The '''Export Behavior''' used here is concerned with exporting tabular information to a '''Database Table'''. | The '''Export Behavior''' used here is concerned with exporting tabular information to a '''Database Table'''. Again, this is an established, however simple, '''Batch Process''' with an '''Batch Process'''/''Export'' step/activity that is unconfigured. | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=9></li> | # <li value=9>Select the '''Batch Process Step''' called ''Export''.</li> | ||
# | # Select the '''''Export Behaviors''''' property and click the ellipsis button. | ||
# | # In the '''Export Behaviors - List of Export Behaviors''' window click the '''Add''' button. | ||
# | # With the '''''Content Type''''' property selected, click the drop-down and select the '''Content Type''' desired, in our case '''BehavioursContentModel'''. | ||
| | | | ||
[[Image:behaviours_20.png]] | [[Image:behaviours_20.png]] | ||
Line 226: | Line 226: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=13></li> | # <li value=13>Select the '''''Export Definitions''''' property and click the ellipsis button.</li> | ||
# | # In the '''Export Definitions - List of Export Definitions''' window click the '''Add''' drop-down and select the desired export type, in our case ''Data Export''. | ||
| | | | ||
[[Image:behaviours_21.png]] | [[Image:behaviours_21.png]] | ||
Line 233: | Line 233: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=15></li> | # <li value=15>Select the '''''Connection''''' property and in the drop-down menu select the desired '''Database Connection''' object, in our case ''BehavioursDataConnection''.</li> | ||
| | | | ||
[[Image:behaviours_22.png]] | [[Image:behaviours_22.png]] | ||
Line 239: | Line 239: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=16></li> | # <li value=16>Select the '''''Table Mappings''''' property and click the ellipsis button.</li> | ||
# | # In the '''Table Mappings - List of Table Mappings''' window select the '''''Source Scope''''' property and in the drop-down menu select the desired scope, in our case the ''Earnings'' table. | ||
#: Keep in mind, setting the scope to this object will allow not only the contents of the table to be collected, but it will also flatten the fields about it into the exported rows. | |||
| | | | ||
[[Image:behaviours_23.png]] | [[Image:behaviours_23.png]] | ||
Line 246: | Line 247: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=18></li> | # <li value=18>Select the '''''Target Table''''' property and in the drop-down menu select the desired '''Database Table''' object, in our case ''dbo.BehavioursExport''.</li> | ||
| | | | ||
[[Image:behaviours_24.png]] | [[Image:behaviours_24.png]] | ||
Line 252: | Line 253: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=19></li> | # <li value=19>Select the '''''Column Mappings''''' property and click the ellipsis button.</li> | ||
# | # In the '''Column Map''' window you can map your columns and fields to the corresponding value containers of the data connection. Here we auto-mapped to the columns of the SharePoint document library, since they are named the same. | ||
| | | | ||
[[Image:behaviours_25.png]] | [[Image:behaviours_25.png]] | ||
Line 260: | Line 261: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=21></li> | # <li value=21>Select the '''''Shared Behavior Mode''''' property and select the desired share behavior, in our case ''SharedOrLocal''.</li> | ||
# | # View the help file to understand which option you may select. | ||
| | | | ||
[[Image:behaviours_26.png]] | [[Image:behaviours_26.png]] | ||
Line 269: | Line 270: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# | # To take advantage of automated '''Activity Processing''' services, select the '''Production''' branch of the '''Batches''' folder. | ||
# | # In the '''Batch''' drop-down select the desired '''''CMIS Import''''' property, in our case ''Import Query Results...''. | ||
| | | | ||
[[Image:behaviours_27.png]] | [[Image:behaviours_27.png]] | ||
Line 277: | Line 278: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=3></li> | # <li value=3>In the '''Import Query Results''' window select the '''''CMIS Query''''' property and click the ellipsis button.</li> | ||
# | # In the '''CMIS Query Editor''' window select the '''''Primary Content Type''''' property and select the desired '''CMIS Content Type''' from the drop-down menu. | ||
| | | | ||
[[Image:behaviours_28.png]] | [[Image:behaviours_28.png]] | ||
Line 284: | Line 285: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=5></li> | # <li value=5>Using either the '''''Select Elements''''' and '''''Where Elements''''' properties, or writing it manually, you can establish a query.</li> | ||
# | #: Here we are selecting all documents from the SharePoint document library that have the '''Imported''' column set to ''No''. | ||
# '''Execute Query''' to see the results in the '''List View'''. | |||
| | | | ||
[[Image:behaviours_29.png]] | [[Image:behaviours_29.png]] | ||
Line 291: | Line 293: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=7></li> | # <li value=7>In the '''Import Query Results''' window select the '''''Disable Select Clause Optimization''''' property and set it to the desired setting, in our case ''True''.</li> | ||
# | #: This will allow the query to run more quickly/smoothly if set to ''True''. | ||
# | # Be sure to set any remaining properties like the '''''Start Step''''' in our case so it’s associated with a '''Batch Process'''. | ||
# | # '''Analyze''' first if you want, otherwise '''Start Import'''. | ||
# Observe the given results and close the window. | |||
| | | | ||
[[Image:behaviours_30.png]] | [[Image:behaviours_30.png]] | ||
Line 301: | Line 304: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=11></li> | # <li value=11>Given the simple nature of the '''Batch Process''', we are jumping to a point that has something pertinent to show. Here we are observing that the '''Document Type Name''' property, set previously in our '''Import Mappings''', has successfully classified these two documents.</li> | ||
| | | | ||
[[Image:behaviours_31.png]] | [[Image:behaviours_31.png]] | ||
Line 307: | Line 310: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
# <li value=12></li> | # <li value=12>The third document did not have its '''''DocType''''' column set in SharePoint, so it came in with the default '''Content Type''' of the associated '''Content Model'''.</li> | ||
| | | | ||
[[Image:behaviours_32.png]] | [[Image:behaviours_32.png]] | ||
Line 314: | Line 317: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
Here in the '''Data Review''' area you can see that all the data was successfully extracted. | |||
| | | | ||
[[Image:behaviours_034.png]] | [[Image:behaviours_034.png]] | ||
Line 320: | Line 323: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
Viewing the SharePoint site we can see that export finished and successfully upated all the empty columns, and set the '''''Imported''''' column values to ''Yes'', meaning they have completed processing and will not be picked up by another import query. | |||
| | | | ||
[[Image:behaviours_035.png]] | [[Image:behaviours_035.png]] | ||
Line 326: | Line 329: | ||
{|cellpadding=10 cellspacing=5 | {|cellpadding=10 cellspacing=5 | ||
|valign=top style="width:35%"| | |valign=top style="width:35%"| | ||
Back in '''Grooper''' you can select the associated '''Database Table''' object and see the newly exported results in the '''Data Preview''' area. | |||
| | | | ||
[[Image:behaviours_036.png]] | [[Image:behaviours_036.png]] | ||
|} | |} |
Revision as of 11:34, 29 March 2021
2021 |
This article is in development for the upcoming version of Grooper, Grooper 2021. Behaviors are a new set of data control functionalities in 2021. This information is incomplete and/or may change by the time of release. |

Behaviors are properties set on Content Types and Export activities that control the flow of documents into and out of Grooper .
About
Behaviors are new to Grooper 2021 and are born of the idea that consolidating the control of the flow of data to the objects most relevant to its collection and delivery (Content Types{Content Model, Content Category, Document Type} and the Export activity) creates a more streamlined and effective Grooper experience. If the Content Type controls all the relevant information about how documents are organized and what is to be collected from them, it is logical that controlling how those documents come into Grooper, and how they get out, should also be defined by the same object. It is also a much cleaner experience to no longer have multiple steps in a Batch Process to cover the types of Export activities (Legacy Export, Mapped Export, Database Export), but instead a single Export activity that leverages the Behaviors of the Content Type, Behaviors defined on the Export activity, or both.
If you take CMIS Connections, for example, Grooper previously created an unnecessary amount of objects to get to the CMIS Content Type. The mappings for importing and exporting were also set here, which made for more places which a person need to go to configure the flow of data into and out of Grooper. It also created a bottle neck of control because if you wanted to have disparate Content Types use a similar CMIS connection, but the import/export mappings inherently needed to be different, you would have had to create a separate CMIS Content Type. Now, one CMIS Repository object can exist, and the import/export mechanisms are controlled via Behaviors (again, defined on Content Types or Export activities.)
Types of Behaviors
There are four types of Behaviors that can be added to a Content Type or Export activity.
Import
Import Behaviors control the flow of documents into Grooper by establishing communication, an Import Definition (of which multiple can exist), between a CMIS Repository object and a Grooper Content Type. CMIS Content Type objects no longer exist in Grooper 2021, therefore Import mappings are no longer set there. They are instead set on an Import Behavior of a Content Type. This elminates the need for multiple CMIS Conent Type objects to exist for the individual needs of discrete Content Types, and instead consolidates the control to the object most pertinent to the import functionality. |
Export
Export Behaviors control the flow of documents out of Grooper by defining export connectivity to external systems such as file systems (directly through a File Export definition, or a CMIS Repository object), content management systems (via CMIS Repository objects), Database Tables, mail servers (directly through an IMAP Export definition, or a CMIS Repository object), or FTP/SFTP servers (directly through FTP/SFTP Export definitions, or a CMIS Repository object). CMIS Content Type objects no longer exist in Grooper 2021, therefore Export mappings are no longer set there. They are instead set on the Export Behavior of a Content Type , or a Batch Process Step set to Export on its Activity Type property. This elminates the need for multiple CMIS Conent Type objects to exist for the individual needs of discrete Content Types, and instead consolidates the control to the object most pertinent to the export functionality. |
Labeling
The Labeling Behavior is a Content Type Behavior designed to collect and utilize a document's field labels in a variety of ways. This includes functionality for classification and data extraction. The Labeling Behavior functionality allows Grooper users to quickly onboard new Document Types for structured and semi-structured forms, utilizing labels as a thumbprint for classification and data extraction purposes. Once the Labeling Behavior is enabled, labels are identified and collected using the "Labels" tab of Document Types. These "Label Sets" can then be used for the following purposes:
Understanding the full functionality of the Labeling Behavior is worthy of it’s own article, which can be found here. |
PDF Generate
The PDF Generate Behavior is a Content Type Behavior designed to create an exportable PDF file with additional native PDF elements, using the classification and extraction content of a Batch Folder. This includes capabilities to export extracted data as PDF metadata, inserting bookmarks, and creating PDF annotations, such as highlighting, checkbox and signature widgets. Understanding the full functionality of the PDF Generate Behavior is worthy of it’s own article, which can be found here. |
How To
Following is a walkthrough demonstrating the setup of Behaviors using a simplified use-case utilizing SharePoint and a database table. It is important to understand that due to the self-contained nature of the aforementioned utilities that this walkthrough will require some translation on the reader's part.
Foundations
Understanding the infrastructure of what's being used for the following walkthrough will help the example make sense.
This test Sharepoint enviornment has three documents it in. The First Name and Last Name fields are left intentionally blank. The Employee ID fields are filled with the intention of reading those values into Grooper upon import. Two of the documents have the DocType fields filled, while the third does not. This will be used to demonstrate how documents can be classified with results from the CMIS repository, while also showing the default behavior otherwise. The Imported fields are set to No. The query used to import the documents will look for the No result to know what to import. Upon importing into Grooper this value will be read and simultaneously changed to InProcess to prevent further pickup. Finally, on export the fields will be written to with Yes to signify they’ve been processed. |
Document Understanding
The documents are populated with the first and last names of the employee, which will be extracted and later exported back to the SharePoint to populate the First Name and Last Name columns. The Earnings table will be extracted by Grooper and sent to a database table. The information will be flattened out with the Employee ID read from the SharePoint and sent with the table information so that the SharePoint and database information can be related. |
CMIS Repository
|
Database
|
Data Model & Extraction
|
Batch Process
|
Import Behavior Setup
In this section we will cover how to configure an Import Behavior with both read and write properties.
Behaviors
|
Import Definitions
|
|
|
Read Mappings
A critical aspect to understand here is document classification upon import. By setting the Read Mappings property you are telling Grooper to populate a Data Element with information. In doing so, you are forcing Grooper to associate the incoming document with the Contnet Type related to the Data Model that owns that Data Element. In short, the incoming documents will be classified as BehavioursContentModel by default.
|
The Document Type Name property allows us to read a value from the CMIS Repository and classify documents as a result. This is very useful, and something completely new to this version of Grooper. If you recall, there are two documents in the SharePoint with the DocType column populated: one test, the other test2. There are two Document Types in the sample Content Model called test and test2. As a result, this read mapping will allow those two documents to come in classified as those Document Types. The third document, having no DocType value from SharePoint, will come in classified as BehavioursContentModel.
|
Write Mappings
We will be looking for documents from the SharePoint that have the Imported value of No. This lets us know the documents have not been processed by Grooper yet. Immediately upon import we will use the Import Write Mappings property to change the values of the Imported column from No to InProcess.
|
Export Behaviors Setup
In this section we will cover how to configure an Export Behaviors for both a Content Type and a Batch Process Step configured for Export. While all the Export Mappings in this sample use case could be set on the Content Model, this walkthrough includes an Export Mapping in the Batch Process to show how both can be leveraged.
Not all types of Export Behaviors are covered (File, SFTP, FTP, and IMAP are not included.) If you feel, after reading this article, that one of the other types should be covered because it is complex enough to warrant a walkthrough, please contact the Training and Education team.
Content Model Export Behavior
The Export Behavior used here is concerned with exporting the document to the CMIS Repository.
|
|
|
|
Batch Process Export Behavior
The Export Behavior used here is concerned with exporting tabular information to a Database Table. Again, this is an established, however simple, Batch Process with an Batch Process/Export step/activity that is unconfigured.
|
|
|
|
|
|
The following property is important because it determines priority of Behaviors when sharing between a Content Type and Batch Process Step. Shared refers to the Behaviors of the Content Type, while Local refers to the Behaviors of the Batch Process Step.
|
Execution and Results
In this section we'll take a look at the results by running a manual import with a CMIS Query and associating it with the sample Batch Process.
|
Import Query
|
|
|
Reviewing Classification
|
|
Viewing Results
Here in the Data Review area you can see that all the data was successfully extracted. |
Viewing the SharePoint site we can see that export finished and successfully upated all the empty columns, and set the Imported column values to Yes, meaning they have completed processing and will not be picked up by another import query. |
Back in Grooper you can select the associated Database Table object and see the newly exported results in the Data Preview area. |