Skip to content

Configuration

Grid Name

Each Grid in Infor EAM is defined by its Grid Name, which is a string that uniquely identifies a Grid. Internally, this Grid Name maps to a numeric Grid ID. In the table below, we can see some examples of this internal mapping.

Grid Name Grid ID
WSJOBS 93

For a detailed list of the Grid Names available for the Grid Requests, please visit this site.

Comments from Sara

Can we complete this, or redirect the users to a place to know? (in case this is relevant, I remember from the meeting it might not be that relevant)

Dataspy ID

In Infor EAM, the Dataspy allows applying a pre-filter and pre-sort to the underlying view of the entities. It also permits controlling which fields of the Grid are displayed as columns in the resulting table, so that the same grid may display different colums, depending on the selected dataspy.

Tip

When searching for a particular value for a Field, it is adviced to use Filters to limit the results of the search.

For example, for the Work Orders' Grid, we have a dataspy named 'All Work Orders with MEC', which shows all work orders, including MEC Work Orders, and another dataspy called 'All Work Orders', which does not include these MEC work orders.

Note

Please note that there is no Dataspy Name, unlike the Grid Name. Generally, it is not mandatory to specify the Dataspy ID in the Request, as the default Dataspy for a Grid will be used whenever it is not specified.

However, if the ID must be used, Dataspies provided by Infor EAM tend to have relatively stable IDs when compared with User Created ones, so the former should be preferred.

User Functions

For some Grids, an User Function must be passed. The User Function to be passed depends on the specifics of each Grid. It is generally possible to retrieve this information from Infor EAM.

If you have any issues in using this configuration, please do not hesitate to contact cmms.support@cern.ch and make your query.

Comments from Sara

Which are the available user functions? Shouldn't we mention this here, or at least point to a place where the reader can see the possible user functions instead of the support?

Parameters

When performing a Grid Request that requires knowledge of the code or type of an Entity, we must use Parameters to specify the mandatory information.

Example

When we are retrieving all Activities associated with a Work Order, the parameter with the code param.jobnumber is set to the Code of the Work Order.

If you wish to find the code to use for the parameter for a certain Grid, do not hesitate to contact cmms.support@cern.ch.

Filters

Individual

Filters allow specifying conditions to apply to the Query, such as only showing Work Orders that are in status R, or searching for an employee whose name starts with P, or even equipment that has a class set.

To do this, each filter has three required pieces of information:

  • which column it applies to;
  • the operator to apply;
  • a value to compare with.

For instance, some of the available Filters can be seen on the Table below:

User Intention Column Name Operator Value
Work Orders in 'R' workorderstatuscode = R
Employee Name starting with 'P' * description BEGINS P
Equiment with a Class class NOT EMPTY ""

* Please note that the Employee Name is the Full Name of the Employee and may not necessarily begin with the First Name.

Note

The Column that the Filter is applied to is the Internal Name of the Column, and not the Display Name of the Column that is shown to the user.

The table below shows all Operators that are available, starting with the name of the Operator in the first column, as exposed to the users by Infor EAM Extended, and the Literal Operator string that must be passed to the Grid Request programatically.

EAM Extended Operator Literal Operator
Equals =
Not Equals !=
Contains CONTAINS
Does Not Contain NOTCONTAINS
Empty IS EMPTY
Not Empty NOT EMPTY
Starts With BEGINS
Ends With ENDS
Less Than <
Greater Than >
Less Than or Equals <=
Greater Than or Equals >=
Selected = (with a value of -1)
Not Selected = (with a value of 0)

Note

Not all Operators work for all columns. For instance, it is not sensible for a description to be less than a number. Additionally, some of the strings that have to be passed programatically include spaces, such as IS EMPTY.

Warning

For using dates with the =, <, >, <=, and >= operators, the value must obey the format DD-MMM-YYYY, such as 09-MAR-2021.

Namely, the Day must start with a 0 if it only has one digit, and the Month is the uppercased first three letters of the English name of the month that the date specifies (JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC).

Combination

It is possible to use more than one Filter and combine them using the two additional properties of Filters: Joiners and Parenthesis.

Joiners

There are only two different kinds of Joiners: AND and OR. They allow us to specify how the Filters are connected and are used in the exact same manner as in Boolean Logic.

For instance, if we have two filters 'Work Order code starts with 28' and 'Work Order is in status R', connecting them using the AND operator would mean that all returned rows obey to both filters, so that their codes all begin with 28 and they are all in status R.

If we used the OR Operator instead, it would mean that the returned rows would obey either one of the Filters, or both of the Filters.

Note

The AND Operator has precedence over the OR Operator. For instance, for some Filters X, Y and Z, the expression X AND Y OR Z is equivalent to (X AND Y) OR Z.

Parenthesis

The Parenthesis allow to specify whether a parenthesis (in the context of Boolean Logics) is present to the left (Left Parenthesis) or the right (Right Parenthesis) of the filter. These Parenthesis parameters should then be assigned a Boolean by the user.

In the Table below, a possible example of how to combine Filters is displayed with all the parameters that need to be specified.

Filter Joiner Left Parenthesis Right Parenthesis
F1 AND true false
F2 OR false true
F3 AND false false
F4 AND true true

From the Table, the following expression is obtained: (F1 AND F2) OR F3 AND (F4).

The fact that the Parenthesis can only be applied to the left or the right of a Filter limits the possibilities that can be expressed with Grid Requests, since it is not possible to use double parenthesis, or a parenthesis after another.

Note

The last Joiner in the expression is simply ignored, but it still must be set to a value: AND or OR.

Sorting

When performing a Grid Request, it is possible to use the Sorting option to sort the rows that will be returned depending on the value of a column, and whether the sort is performed in descending or ascending order.

The column name is specified by its internal name and not the name that is shown to the user. The direction is a simple string: ASC for ascending, and DESC for descending.

Row Count & Cursor Position

We can specify an upper limit to the number of rows returned from a Grid Request, denominated in Infor EAM as Row Count. The Cursor Position can be understood as the first row that the grid request will return.

Used together, the Row Count and Cursor Position features allow for implementing pagination with Grid Requests, which is especially useful for Queries that will return a large quantity of results.

For instance, when a Grid Request is first performed to obtain the rows in a grid in Infor EAM, the Cursor Position will be 1. After the user scrolls down until more rows are fetched, the Cursor Position will be 51 for the subsequent Request, ignoring the rows that were already returned.

Curiosity

In this case, the second Cursor Position is 51 because the default row count in Infor EAM is 50.

Next Section


Last update: July 8, 2022