# Using the Administration Console

# Working With ECSpec Reports

The following sections describe working with ECSpec Reports:

- Creating ECSpec Reports
- Creating Report Filters
- Creating Report Groups
- Specifying User Memory Regions

## Creating ECSpec Reports

Every ECSpec contains specifications for one or more reports. A report is based on the tags that were detected by the specified readers during the event cycle. It may have more or less information, based on the conditions of the report specification and any report filters or groups that have been defined.

When an event cycle completes, a set of reports for an ECSpec (for example, an ECReports object) is generated and can be sent to subscribers or other clients. For more information on subscribers, see Creating and Removing Subscribers.

Note: | An ECSpec must contain at least one report before being deployed.

To create an ECSpec report:

1. In the left pane of the Console, expand an Edge Server node and select ECSpecs.
2. In the ECSpecs pane, select an ECSpec to which you will add a report.
3. Click Edit to display the ECSpec Editor.
4. In the ECSpec Editor, expand the Reports node in the left pane.

The right pane displays a list of report specifications for the current ECSpec.

5. Click New Report.

The new report is added to the left pane, and the right pane displays the report properties.

Each report you add corresponds to an ECReportSpec object. For more information on this object, see Reading Tags Using the ALE API in Programming with the ALE and ALEPC APIs.

6. Enter a unique report name.
7. Use the check boxes in the Report Contents section to specify the report contents.

Table 4-1 Report Contents
Name | Description
--- | ---
EPC List | EPCs represented as pure identity URIs according to the EPCglobal Tag Data Standards (urn:epc:id:...). A pure identity URI contains just the EPC, with no additional information such as tag type, filter bits, and so on.
Tag List | The tag field contains EPCs represented as tag URIs according to the EPCglobal Tag Data Standards (urn:epc:tag:...). A tag URI contains all information on the tag, including the EPC, tag type, and filter bits (when applicable).
Raw Hexadecimal List | Raw tag values represented as raw hexadecimal URIs.
Raw Decimal List | Raw tag values represented as raw decimal URIs (urn:epc:raw:...).
Count | Total number of EPCs.

8. Choose the report set (the set of tags to include in the report) by selecting radio buttons in the Report Set section.

Table 4-2 Report Set
Name | Description
--- | ---
Current | All EPCs read in the current event cycle.
Additions | EPC additions from the previous event cycle.
Deletions | EPC deletions from the previous event cycle.

9. Use the check boxes in the Omit Report section to define the behavior when the report is empty.

If you select the check box labeled If omitted, suppress all ECReports this cycle, the existence of this particular report will control whether any reports are sent to subscribers. Specifically, if this report is omitted based on one of the other conditions (empty, or unchanged from last cycle), no reports will be sent for the current cycle.

10. Enter application-specific data in the Application Data field, if any.

Data entered here is copied to every report generated from this ECSpec.

11. Add one or more filters to the report, if desired. See Creating Report Filters.

The report remains visible in the ECSpec Editor. Changes are saved when you deploy the ECSpec.

12. One ECSpec can contain many reports. To add more reports to the current ECSpec, repeat steps 4-11.
13. When you finish adding reports to the ECSpec, deploy it as described in Creating and Deploying ECSpecs or Editing ECSpecs.

### Editing ECSpec Reports

To edit an ECSpec report:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Select a report.

The right pane displays a set of properties for the current report.

4. Make any desired changes here.

The report remains visible in the ECSpec Editor. Changes are saved when you deploy the ECSpec.

5. To edit more reports, repeat the steps 2 - 4.
6. Deploy the ECSpec by clicking the Deploy button on the ECSpec Editor toolbar (or selecting File > Deploy).

### Removing ECSpec Reports

To remove an ECSpec report:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1 - 3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Select a report.
4. Click Delete Report.

Changes are saved when you deploy the ECSpec.

If you delete all the reports, the ECSpec becomes invalid and cannot be deployed; at least one report specification must be given.

## Creating Report Filters

Report filters allow you to specify which tags will be included in and excluded from the report. You can filter tags based on any fields for the chosen tag format.

If there are any Include filters, tags that match at least one include filter pattern will be included in the report (unless they also match an Exclude filter). If there are no Include filters, then tags will be included unless they match any Exclude filters.

The Include and Exclude filters together make up an ECFilterSpec object. See Reading Tags Using the ALE API in Programming with the ALE and ALEPC APIs.

To add a report filter to an ECSpec report:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has two filter nodes beneath it (Include and Exclude).

4. Select Include Filters or Exclude Filters to display a list of filters of that type in the right pane.
5. Click New Filter.

The new filter is added to the left pane, and the right pane displays the filter properties.

6. Choose a Tag Format from the drop-down list. For more information on tag formats, see the EPCGlobal Tag Data Standards.
7. Fill in the fields for that tag format (the fields shown depend on the format chosen).

For detailed information, see ECFilterSpec in Programming with the ALE and ALEPC APIs.

The filter remains visible in the ECSpec Editor until you choose a different node in the left pane.

8. To add more report filters to the current ECSpec, repeat steps 4 - 7.

Changes are saved when you deploy the ECSpec.

9. When you finish editing the ECSpec, click the Deploy button on the ECSpec Editor toolbar (or select File > Deploy).

### Editing Report Filters

To edit a report filter:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the ECSpec Editor, expand the Reports node in the left pane.

Each report for this ECSpec is listed beneath the Reports node.

3. Expand an individual report node.

Each report node has two filter nodes beneath it (Include and Exclude).

4. Expand a filter node and select a filter to display the filter properties in the right pane.
5. Edit the fields as desired.

The filter remains visible in the ECSpec Editor until you choose a different node in the left pane.

6. To edit more report filters in the current ECSpec, repeat steps 3 - 5.

Changes are saved when you deploy the ECSpec.

### Removing Report Filters

To remove a report filter:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has two filter nodes beneath it (Include and Exclude).

4. Expand a filter node and select a filter to display the filter properties in the right pane.
5. Click Delete Filter.

Changes are saved when you deploy the ECSpec.

## Creating Report Groups

Report grouping enables you to specify how a set of tag data will be separated into subdivisions within a report. You can create a group based on any of the fields for the tag format chosen, and define a series of rules that will generate groups within a report. Both list and count data included in the report are grouped.

When you create report groups, every tag reported in an event cycle will be part of exactly one group. If a tag does not match any pattern URIs in the pattern list, it is included in a special "default group." As a special case of the preceding rule, if the pattern list is empty (or if no groups are defined), all tags will be part of the default group. See EPC Patterns in Programming with the ALE and ALEPC APIs.

The report group information (all the groups specified under a Grouping node in the left pane of the ECSpec Editor) constitutes an ECGroupSpec object. See Reading Tags Using the ALE API in Programming with the ALE and ALEPC APIs.

To add a report group to an ECSpec report:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has a Grouping node beneath it.

4. Select the Grouping node to display a list of report groups in the right pane.
5. Click New Group.

The new group is added to the browser tree, and the right pane displays the group properties.

6. Choose a Tag Format from the drop-down list.
7. Fill in the fields for the sections that are displayed beneath the tag format (the sections shown depend on the chosen format). For more information on tag formats, see the EPCGlobal Tag Data Standards.

Table 4-3 describes grouping behavior you can specify. Fields are inactive when a grouping behavior is disallowed for a particular section.

Table 4-3 Grouping Options
Name | Description
--- | ---
Any | All values belong to a single group (will appear on a single report).
Group By | Create a different group for each distinct value (generate a separate report for each value).
Specific | Create a group for the value specified (and a default group for all other values).
Range | Create a group for the range of values specified (and a default group for all other values).

The group remains visible in the ECSpec Editor until you choose a different node in the left pane.

8. To add more report groups to the current ECSpec, repeat the steps 5-7.

Changes are saved when you deploy the ECSpec.

### Editing Report Groups

To edit a report group:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has a Grouping node beneath it.

4. Expand the Grouping node and select a group to display the group properties in the right pane.
5. Edit the fields as desired.

The group remains visible in the ECSpec Editor until you choose a different node in the left pane.

6. To edit more report groups in the current ECSpec, repeat the steps 4 and 5.

Changes are saved when you deploy the ECSpec.

### Removing Report Groups

To remove a report group:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has a Grouping node beneath it.

4. Expand the Grouping node and select a group.
5. Click Delete Group.

Changes are saved when you deploy the ECSpec.

## Specifying User Memory Regions

In your report specifications, you can specify a memory location on Gen 2 EPCglobal tags.

For detailed information on writing and reading Gen 2 tags, see Programming with the ALE and ALEPC APIs.

To specify a user memory location:

1. Open the ECSpec Editor and select an ECSpec as described in steps 1-3 of Creating ECSpec Reports.
2. In the left pane of the ECSpec Editor, expand the Reports node to display the reports for the selected ECSpec.
3. Expand an individual report node.

Each report node has a User Memory Region node beneath it.

4. Select User Memory Region and click New User Memory Region.
5. Specify a user memory region as described in Table 4-4.

Changes are saved when you deploy the ECSpec.

Table 4-4 User Memory Regions
Name | Description
--- | ---
URI | URI-formatted string representing the contents of the requested memory segment. The URI includes a selection for memory bank, an offset within the memory bank, and a length of the memory extent, in bits. `urn:connecterra:tagmem:@bankid.length[.offset]` Where `bankid` is one of three values: `epc`, `tid`, or `user`. Length and offset are decimal values in bits. The default value for offset is 0.
EPC | Tag EPC value.
Memory Bank | Valid values are: `epc`, `tid`, or `user`. Length and offset are decimal values in bits. The default value for length is 32 and offset (optional) is 0.