Get Row

Retrieve a single row from a business object. The result can be used to display or update the row.

HTTP Request

GET /icweb.dll/bo/{tableName}/{keyValue}?calculateValues={true|false}

URI Parameters

Name

In

Required

Type

Description

tableName

Path

Yes

String

Table Name of the business object

keyValue

Path

Yes

Integer

Id of the row to be returned, if you specify 0 as the key value (this can’t exist) then getRow returns you a blank row with the default values for all fields populated, ready to be used to insert a new row.

calculateValues

Path

No

Boolean

This can be used to disable returning calculated fields. By default this is true, if you supply false, then no calculated fields will be returned.

Responses

Name

Type

Description

200 OK

TableData

OK

404 Not Found

No row found for specified keyValue

TableData

Contains the row data for the requested row for the specified business object.

Name

Type

Description

Optional

Default

key

Integer

Key value for this business object, unique.

No

stamp

String

Stamp for this row set, can be used to re-request the data or request the next page of data. If omitted row set can’t be paged or re-requested.

Yes

startRow

Integer

Starting row for this set of paged data.

Yes

0

pageSize

Integer

Number of rows in each page of data.

Yes

100

totalRows

Integer

Number of rows total across all pages, this value may change on subsequent page retrievals if modifications are made by other users.

Yes

null

rows

TableRow []

Array of fields/values. Fields are defined by the BusinessObject.

Yes

Any field not specified is assumed to be null.

TableRow

The business object data row, describes a row of data in a TableData result set. The fields that are defined in TableRow are based on the BusinessObject.

Note

The fields are dynamic and can change. Each and every NEXUS database may have slightly different fields in the System Tables. The custom tables (Asset Information, Events etc) may differ significantly between databases, and can change between calls to the REST service if the users are actively making changes. It is expected that any client consuming data from the NEXUS REST service is able to cope with this. Either by ignoring additional fields in the TableRow or by assuming a field value is null if the field does not exist.

Additionally, there is a special field returned, @permissions for each row. The two values available for this field are: write and read. write is the default value.

write means the user has permission to read and write to the row. read means the user only has permission to read the row, but not write.

Name

Type

Description

Optional

Default

{fieldName}

Any

Contains the value for the specified field, see BusinessObjectField. If this is a non-stored field, then this will contain the display value.

Yes

If a field is omitted, it is because the fields value is null.

{fieldName}

Error

If the field is in an error state, then an error object is returned.

Yes

Error

The error object, contains a single value for the error message

Name

Type

Description

Optional

error

string

Error string to be shown to the user

No

Example

Request

GET /icweb.dll/bo/Workpack/4

Response

{
        "rows": [{
                "Guid": "{35809A21-9174-4B56-AD5F-F3930DE24A2D}",
                "Workpack_ID": 1,
                "Name": "2015 ROV Inspection",
                "Actual_Start": "2015-05-15T00:00:00.000Z",
                "Description": "Annual 2015 full field rov inspection",
                "ReadOnly": false,
                "Task_Time": 0,
                "Hours_Per_Day": 12,
                "Estimated_Duration": 0,
                "Actual_End": "2015-05-15T00:00:00.000Z",
                "Total_Cost": 0,
                "Cost": 0,
                "Component_ID": 1,
                "Task_Count": 0
        }],
        "key": 136
}