2.90:Reports: Difference between revisions
Dgreenwood (talk | contribs) No edit summary |
Dgreenwood (talk | contribs) No edit summary |
||
| (16 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
__NOINDEX__ | |||
{|cellpadding=10 cellspacing=5 style="margin:12px" | |||
|- | |||
|style="font-size:200%; background-color:#662d91; color:white; width:28px; text-align:center"|'''‼''' | |||
|style="border: 4px solid #662d91"| | |||
WARNING OBSOLETE TECH DETECTED!! | |||
Reports were removed from Grooper in version 2021. | |||
The reporting functionality they produced was replaced by the "Stats" page in the Grooper web client in version 2023. | |||
|} | |||
[[file:Reports Header.png|frame|Reports are found and created in the "Reports" node.]] | [[file:Reports Header.png|frame|Reports are found and created in the "Reports" node.]] | ||
<onlyinclude> | |||
<blockquote style="font-size:14pt"> | <blockquote style="font-size:14pt"> | ||
'''Reports''' display information collected from various Grooper operations. | '''Reports''' display information collected from various Grooper operations. | ||
</blockquote> | </blockquote> | ||
</onlyinclude> | |||
== About == | == About == | ||
Individual Reports are created as '''Report Instances''' in Grooper. What information the '''Report Instance''' displays is defined by the '''''Report Type''''' property. There are several "System Reports" that ship with every Grooper install. Many of these are designed to track batch processing automation rates or the productivity of data entry clerks. For example, the "Keystrokes" report tracks the number of keystrokes logged during '''Data Review''' for '''[[Batch]]es''' using a specified '''[[Batch Process]]'''. | <onlyinclude> | ||
Individual Reports are created as '''Report Instances''' in Grooper. What information the '''Report Instance''' displays is defined by the '''''Report Type''''' property. There are several "System Reports" that ship with every Grooper install. Many of these are designed to track batch processing automation rates or the productivity of data entry clerks. For example, the "Keystrokes" report tracks the number of keystrokes logged during '''Data Review''' for '''[[Batch]]es''' using a specified '''[[Batch Process]]'''. | |||
</onlyinclude> | |||
There are twelve System Reports that are included in every Grooper installation. | |||
* Batch Statistics | |||
* Data Capture Automation | |||
* Data Review Operators | |||
* Event Log | |||
* Keystrokes | |||
* Pages Scanned | |||
* Production Batches | |||
* Project Billing | |||
* Query Report | |||
* Scan Operator Efficiency | |||
* Scan Volume | |||
* System Health | |||
Each of these reports can be saved as a Word, PDF or Excel file. | |||
Custom reports can also be generated in an Object Library using Microsoft Visual Studio and the Visual Studio Report Designer. | Custom reports can also be generated in an Object Library using Microsoft Visual Studio and the Visual Studio Report Designer. | ||
| Line 18: | Line 51: | ||
The ''Batch Statistics'' report details information about each '''[[Activity]]''' in a '''Batch Process'''. This report will give different information, depending on the activity steps in the '''Batch Process''' fro a given date range. You can use this information to get a better idea of how good your accuracy, productivity and automation rates are. | The ''Batch Statistics'' report details information about each '''[[Activity]]''' in a '''Batch Process'''. This report will give different information, depending on the activity steps in the '''Batch Process''' fro a given date range. You can use this information to get a better idea of how good your accuracy, productivity and automation rates are. | ||
{|style="margin: | |||
{|style="margin:auto" cellpadding=20 | |||
|- | |- | ||
| | |style="width:33%"| | ||
:1. To run a ''Batch Statistics'' report, first change the '''''Report Type''''' property to ''Batch Statistics'' | :1. To run a ''Batch Statistics'' report, first change the '''''Report Type''''' property to ''Batch Statistics'' | ||
| | | | ||
| Line 41: | Line 75: | ||
::* All activities will have "Tasks Processed", "Run Time", "Processing Rate", and "Processing Time" values. | ::* All activities will have "Tasks Processed", "Run Time", "Processing Rate", and "Processing Time" values. | ||
| | | | ||
[[file:Reports Batch Statistics 3.png|900px]] | [[file:Reports Batch Statistics 4.png|900px]] | ||
|} | |||
'''[[Reports#Report Types|Back to the top]]''' | |||
</tab> | |||
<tab name="Data Capture Automation" style="margin:20px"> | |||
The ''Data Capture Automation'' report returns information from the '''Data Review''' activity. This includes total records completed for a '''Batch Process''' and total records edited. The percentage of records edited of records completed gives you an "Automation Percentage". If you don't have to edit any field, your data extraction is perfect and your automation rate would be 100%. The report also displays the total number of keystrokes and keystrokes per record. | |||
{|style="margin:auto" cellpadding=20 | |||
|- | |||
|style="width:33%"| | |||
:1. To run a ''Data Capture Automation'' report, first change the '''''Report Type''''' property to ''Data Capture Automation'' | |||
| | |||
[[file:Reports Report Types 1.png|900px]] | |||
|- | |||
| | |||
:2. Select the '''Batch Process''' you wish to report. Here, it is a simple demo process named "Dummy Batch Process". | |||
| | |||
[[file:Reports Report Types 2.png|900px]] | |||
|- | |||
| | |||
:3. Select a date range for the reporting period using the '''''Report Period''''' property. | |||
| | |||
[[file:Reports Report Types 3.png|900px]] | |||
|- | |||
| | |||
:4. Press the "Run Report" button to run the report. | |||
::* This will display information about how many document records were edited during '''Data Review'''. | |||
::* This will give you an idea about how well the data extraction portion of your '''Batch Process''' automates. | |||
::* For this example, we didn't do too well. At least one field on every document had to be manually updated during data review (Either the field was blank and needed to be entered in, or the wrong value extracted and needed to be changed). So, the "Automation Percentage" is "0.00%". This gives me an idea that my extraction logic in my Content Model could be improved. | |||
| | |||
[[file:Reports Report Types 4.png|900px]]] | |||
|- | |||
| | |||
:Sure enough, there was a Data Type extractor not picking up values for a field in my Content Model. After another batch runs through, the "Automation Percentage" changes to "33.33%", reflecting the change. | |||
| | |||
[[file:Reports Report Types 5.png|900px]] | |||
|} | |||
'''[[Reports#Report Types|Back to the top]]''' | |||
</tab> | |||
</tabs> | |||
== How To == | |||
=== Create a New Report === | |||
<tabs style="margin:20px"> | |||
<tab name="Step 1" style="margin:20px"> | |||
==== Add a New Report Instance ==== | |||
{|cellpadding=20 | |||
|- | |||
| | |||
1. Right click the '''Reports''' folder in the Node Tree. | |||
2. Select "Add" and "Report Instance..." | |||
3. A pop up window will appear to name the '''Report Instance'''. Here, we chose to name it "Report Example". Press the "OK" button to add the '''Report Instance''' to the '''Reports''' folder. | |||
| | |||
[[file:Reports Add Report 1.png|1000px]] | |||
|} | |||
</tab> | |||
<tab name="Step 2" style="margin:20px"> | |||
==== Select the Report Type ==== | |||
{|cellpadding=20 | |||
|- | |||
| | |||
4. Using the dropdown list on the '''''Report Type''''' property, select which report you would like to configure. | |||
| | |||
[[file:Reports Add Report 2.png|1000px]] | |||
|} | |||
</tab> | |||
</tabs> | |||
=== Using the Query Report to Generate Custom Reports === | |||
The ''Query Report'' allows you to perform a SQL query against any SQL database. This includes the ability to query the Grooper SQL database. If the information you want to is query-able in some way from the Grooper database tables, you can make a custom report targeting it! | |||
<tabs style="margin:20px"> | |||
<tab name="Step 1" style="margin:20px"> | |||
==== Create a Data Connection to the Grooper Database ==== | |||
{|style="margin:20px" | |||
|- | |||
| | |||
:1. Navigate to the '''Data Connections''' folder in the '''Infrastructure''' folder. Traverse the Node Tree following this path. | |||
:::<code>Root Node > Infrastructure > Data Connections</code> | |||
:2. Right click the '''Data Connections''' folder. Select "Add" and "Data Connection..." | |||
:3. A pop up window will appear to name the '''Data Connection'''. Since we are connecting to the Grooper Database, we named ours "Grooper Database". Press the "OK" button when finished to add the '''Data Connection''' to the Node Tree. | |||
| | |||
[[file:Reports Custom Query Report 1.png|1000px]] | |||
|} | |||
</tab> | |||
<tab name="Step 2" style="margin:20px"> | |||
==== Enter Database Connection Settigns ==== | |||
{|cellpadding=20 | |||
|- | |||
| | |||
:1. Expand the '''''Connection Settings''''' properties. Use the '''''Server Name''''' property to point to the Grooper database's server. | |||
::* If you installed Grooper using SQL Express, the server will be a named instance of the machine. You will enter <code>Server_Name\GROOPER</code> | |||
::* For standard SQL installs, simply point to the server on which it is installed. | |||
:2. Select the database name for the Grooper Repository. This defaults to "Grooper" but you may have named it something different. | |||
:3. Enter the User Name and Password to access the database, if needed. | |||
| | |||
[[file:Reports Custom Query Report 2.png|1000px]] | |||
|- | |||
|colspan=2| | |||
{|cellpadding="10" cellspacing="5" style="margin:auto" | |||
|-style="background-color:#36b0a7; color:white" | |||
|style="font-size:14pt"|'''FYI''' | |||
| | |||
If you are unsure what your Grooper Database's '''''Server Name''''' or '''''Database Name''''' is, open Grooper Config and select the Grooper Repository you are attempting to query. The '''''Server Name''''' and '''''Database Name''''' will be listed in the property panel. | |||
[[File:Reports Find Server and Database 1.png|center|800px]] | |||
|} | |||
|- | |||
| | |||
Once connected, you will be able to see the thirteen database tables in the Grooper Database | |||
| | |||
[[file:Reports Custom Query Report 3.png|1000px]] | |||
|- | |||
| | |||
If you select one of these tables, the "Data Preview" panel will show you a preview of the data within that table. | |||
| | |||
[[file:Reports Custom Query Report 4.png|1000px]] | |||
|} | |||
'''[[Reports#Using the Query Report to Generate Custom Reports|Back to the top]]''' | |||
</tab> | |||
<tab name="Step 3" style="margin:20px"> | |||
=== Add a New Query Report === | |||
{|cellpadding=20 | |||
|- | |||
| | |||
:1. Add a new '''Report Instance'''. | |||
:2. Select the '''''Report Type''''' property and select ''Query Report''. | |||
| | |||
[[file:Reports Custom Query Report 5.png|1000px]] | |||
|- | |||
| | |||
:3. Using the '''''Database Connection''''' property, select the '''Database Connection''' to the Grooper Database established in "Step 1" of this tutorial. | |||
| | |||
[[file:Reports Custom Query Report 6.png|1000px]] | |||
|} | |||
Next, you will use the '''''Query Statement''''' property to write a SQL query to return whatever information you desire from the Grooper Database. The next few tabs provide some examples of SQL queries and their results when the report runs. | |||
'''[[Reports#Using the Query Report to Generate Custom Reports|Back to the top]]''' | |||
</tab> | |||
<tab name="Query Example 1" style="margin:20px"> | |||
==== Count Objects in a Repository ==== | |||
This is a simple query to return the number of Content Models in a Grooper Repository. The query is as follows: | |||
<pre> | |||
SELECT COUNT(TypeName) AS Content_Models | |||
FROM TreeNode | |||
WHERE TypeName='Grooper.Core.ContentModel' | |||
</pre> | |||
{|cellpadding="20" | |||
|- | |||
| | |||
:1. Enter the SQL query using the '''''Query Statement''''' property. Expand the dropdown menu. This is a text editor for you to type the full query or paste it from SQL Server Management Studio or wherever you like to craft your queries. | |||
| | |||
[[file:Reports Custom Query Report 7.png|1000px]] | |||
|- | |||
| | |||
:2. Press the "Run Report" button. As you can see, there are five Content Models in this repository, and the report returns a value of "5". | |||
| | |||
[[file:Reports Custom Query Report 8.png|1000px]] | |||
|} | |||
You could use this query to count any object in the repository. Just change the value in the <code>WHERE TypeName='Grooper.Core.ContentModel'</code> clause to match the Grooper Type Name of the object you're looking for. For example, if you wanted to return the count of Data Types you would instead use <code>WHERE TypeName='Grooper.Core.DataType'</code> | |||
'''[[Reports#Using the Query Report to Generate Custom Reports|Back to the top]]''' | |||
</tab> | |||
<tab name="Query Example 2" style="margin:20px"> | |||
==== Count Multiple Types of Objects in a Repository ==== | |||
This query is very similar to the one from the previous example, but counts multiple different types of objects instead of just one. Specifically, this will return the number of Content Models, Data Types and CMIS Connections. | |||
<pre> | |||
SELECT TypeName AS Object_Name, COUNT(TypeName) AS Obect_Count | |||
FROM TreeNode | |||
WHERE TypeName in ('Grooper.Core.ContentModel', 'Grooper.Core.DataType', 'Grooper.CMIS.CMISConnection') | |||
GROUP BY TypeName | |||
</pre> | |||
{|cellpadding=20 | |||
|- | |||
| | |||
Just like in the previous example, enter the SQL query using the '''''Query Statement''''' property. The dropdown menu will allow you to type in the SQL query. | |||
| | |||
[[file:Reports Custom Query Report 12.png|1000px]] | |||
|- | |||
| | |||
When the report runs, it returns a count of the three types of objects searched for in the Node Tree. | |||
* Note as well, the "Appearance" properties control how the report is formatted. You can change the column widths, header and data font sizes, page layout and the table cells' background colors. | |||
| | |||
[[file:Reports Custom Query Report 13.png|1000px]] | |||
|} | |||
'''[[Reports#Using the Query Report to Generate Custom Reports|Back to the top]]''' | |||
</tab> | |||
<tab name="Query Example 3" style="margin:20px"> | |||
==== Attended Activity Time Tracking ==== | |||
This query returns the time (in seconds) users have spent on the attended activities '''Classify Review''' and '''Data Review''' in the last day. | |||
<pre> | |||
DECLARE @today datetime=GETDATE() | |||
SELECT UserName, StepName, DATEDIFF(second,SessionStats.StartTime,SessionStats.EndTime) AS Processing_Time, BatchName | |||
FROM SessionStats | |||
WHERE StepName='Classify Review' OR StepName='Data Review' AND EndTime>DATEADD(day,-1,@today) | |||
ORDER BY UserName, StepName, Processing_Time DESC | |||
</pre> | |||
{|cellpadding=20 | |||
|- | |||
| | |||
Just like in the previous example, enter the SQL query using the '''''Query Statement''''' property. The dropdown menu will allow you to type in the SQL query. | |||
| | |||
[[file:Reports Custom Query Report 9.png|1000px]] | |||
|- | |||
| | |||
When the report runs, it searches the "SessionStats" table, which collects the start and end time for Classify Review and Data Review activities from processed Batches and returns the total time spent for each instance. | |||
| | |||
[[file:Reports Custom Query Report 10.png|1000px]] | |||
|} | |} | ||
'''[[Reports#Using the Query Report to Generate Custom Reports|Back to the top]]''' | |||
</tab> | </tab> | ||
<tabs> | <tab name="The TreeNode Table" style="margin:20px"> | ||
If you're really serious about using the ''Query Report'' to build custom reporting, you may want to explore the "TreeNode" table. This single table has the most information on every single object in your Grooper Environment. This includes the values of all properties on every object. You can even see the regular expression pattern used by extractor objects! | |||
[[file:Reports Custom Query Report 11.png|center|1000px]] | |||
</tab> | |||
</tabs> | |||
== Version Differences == | |||
There are no notable version differences at this time. | |||
[[Category:Articles]] | |||
Latest revision as of 11:07, 5 August 2025
| ‼ |
WARNING OBSOLETE TECH DETECTED!! Reports were removed from Grooper in version 2021. The reporting functionality they produced was replaced by the "Stats" page in the Grooper web client in version 2023. |

Reports display information collected from various Grooper operations.
About
Individual Reports are created as Report Instances in Grooper. What information the Report Instance displays is defined by the Report Type property. There are several "System Reports" that ship with every Grooper install. Many of these are designed to track batch processing automation rates or the productivity of data entry clerks. For example, the "Keystrokes" report tracks the number of keystrokes logged during Data Review for Batches using a specified Batch Process.
There are twelve System Reports that are included in every Grooper installation.
- Batch Statistics
- Data Capture Automation
- Data Review Operators
- Event Log
- Keystrokes
- Pages Scanned
- Production Batches
- Project Billing
- Query Report
- Scan Operator Efficiency
- Scan Volume
- System Health
Each of these reports can be saved as a Word, PDF or Excel file.
Custom reports can also be generated in an Object Library using Microsoft Visual Studio and the Visual Studio Report Designer.
Report Types
The Batch Statistics report details information about each Activity in a Batch Process. This report will give different information, depending on the activity steps in the Batch Process fro a given date range. You can use this information to get a better idea of how good your accuracy, productivity and automation rates are.
|
|
|
|
|
|
|
The Data Capture Automation report returns information from the Data Review activity. This includes total records completed for a Batch Process and total records edited. The percentage of records edited of records completed gives you an "Automation Percentage". If you don't have to edit any field, your data extraction is perfect and your automation rate would be 100%. The report also displays the total number of keystrokes and keystrokes per record.
|
|
|
|
|
|
|
|
|
How To
Create a New Report
Add a New Report Instance
|
1. Right click the Reports folder in the Node Tree. 2. Select "Add" and "Report Instance..." 3. A pop up window will appear to name the Report Instance. Here, we chose to name it "Report Example". Press the "OK" button to add the Report Instance to the Reports folder. |
Using the Query Report to Generate Custom Reports
The Query Report allows you to perform a SQL query against any SQL database. This includes the ability to query the Grooper SQL database. If the information you want to is query-able in some way from the Grooper database tables, you can make a custom report targeting it!
Create a Data Connection to the Grooper Database
|
Enter Database Connection Settigns
Add a New Query Report
|
|
|
Next, you will use the Query Statement property to write a SQL query to return whatever information you desire from the Grooper Database. The next few tabs provide some examples of SQL queries and their results when the report runs.
Count Objects in a Repository
This is a simple query to return the number of Content Models in a Grooper Repository. The query is as follows:
SELECT COUNT(TypeName) AS Content_Models FROM TreeNode WHERE TypeName='Grooper.Core.ContentModel'
|
|
|
You could use this query to count any object in the repository. Just change the value in the WHERE TypeName='Grooper.Core.ContentModel' clause to match the Grooper Type Name of the object you're looking for. For example, if you wanted to return the count of Data Types you would instead use WHERE TypeName='Grooper.Core.DataType'
Count Multiple Types of Objects in a Repository
This query is very similar to the one from the previous example, but counts multiple different types of objects instead of just one. Specifically, this will return the number of Content Models, Data Types and CMIS Connections.
SELECT TypeName AS Object_Name, COUNT(TypeName) AS Obect_Count
FROM TreeNode
WHERE TypeName in ('Grooper.Core.ContentModel', 'Grooper.Core.DataType', 'Grooper.CMIS.CMISConnection')
GROUP BY TypeName
|
Just like in the previous example, enter the SQL query using the Query Statement property. The dropdown menu will allow you to type in the SQL query. |
|
|
When the report runs, it returns a count of the three types of objects searched for in the Node Tree.
|
Attended Activity Time Tracking
This query returns the time (in seconds) users have spent on the attended activities Classify Review and Data Review in the last day.
DECLARE @today datetime=GETDATE() SELECT UserName, StepName, DATEDIFF(second,SessionStats.StartTime,SessionStats.EndTime) AS Processing_Time, BatchName FROM SessionStats WHERE StepName='Classify Review' OR StepName='Data Review' AND EndTime>DATEADD(day,-1,@today) ORDER BY UserName, StepName, Processing_Time DESC
|
Just like in the previous example, enter the SQL query using the Query Statement property. The dropdown menu will allow you to type in the SQL query. |
|
|
When the report runs, it searches the "SessionStats" table, which collects the start and end time for Classify Review and Data Review activities from processed Batches and returns the total time spent for each instance. |
If you're really serious about using the Query Report to build custom reporting, you may want to explore the "TreeNode" table. This single table has the most information on every single object in your Grooper Environment. This includes the values of all properties on every object. You can even see the regular expression pattern used by extractor objects!

Version Differences
There are no notable version differences at this time.
