POST /ws/rest/service/v1/ds/data-def
Version: 20.11
Purpose:
To create data definition
Input:
All parameters should be URL encoded.
Both input & output in JSON format in the body
Create DD Basic type
Input JSON field description:
Required Fields:
- name: specify the data definition name
- type: Basic
- data_type: Integer/String are possible values.
- input_type: Text Box, Pull-down Menu, Radio Buttons, Multi-select Input, Multiple Text Lines, Checkbox are possible values based on the data type.
- data_size: has to be provided for Text Box and Multiple Text Lines.
Non-required Fields:
- default_value: Default value can be set.
- data_set: Value and Labels for Pull-down Menu , Radio buttons, Multi-select Input
- dataset_non_modifiable: Yes/No.
Valid Fields based on the data_definition:
data_type | input_type | datasize | separator | data_set |
---|---|---|---|---|
Integer | Checkbox | n/a | n/a | n/a |
Integer | Pull-down Menu | n/a | n/a | pull down value and labels need to be set |
Integer | Radio Buttons | n/a | n/a | value and labels need to be set |
String | Text Box | required. | n/a | n/a |
String | Multiple Text Lines | required. | n/a | n/a |
String | Pull-down Menu | n/a | n/a | pull down value and labels need to be set |
String | Radio Buttons | n/a | n/a | value and labels need to be set |
String | Multi-select Input | n/a | comma is the separator. | value need to be set |
Notes:
Category will be defaulted to "Company" in case of basic type of data definition.
"System" category type of data definition cannot be created.
type is case insensitive.
dataset_non_modifiable is case insensitive.
Basic type input JSON
{
"options":{
"type": "Basic"
},
"data": [{
"name": "sample basic 1",
"data_size": "128",
"data_type": "String",
"input_type": "Text Box"
},
{
"name": "sample basic 2",
"data_type": "Integer",
"input_type": "Pull-down Menu",
"dataset_non_modifiable": "Yes",
"data_set": [{
"value": 0,
"label": "first",
"row_num": 1,
"status": "Active",
"is_default": "No"
},
{
"value": 1,
"label": "Fixed Amount",
"row_num": 2,
"status": "Active",
"is_default": "Yes"
},
{
"value": 2,
"label": "last",
"row_num": 3,
"status": "Active",
"is_default": "No"
}
]
}
]
}
Output:
JSON object containing 'status', 'data', 'message'.
Basic type output JSON
{
"data": [
{
"data_size": "128",
"name": "sample basic 1",
"data_type": "String",
"input_type": "Text Box",
"default_value": "",
"used": "",
"category": "Company"
},
{
"data_size": "0",
"dataset_non_modifiable": "Yes",
"name": "sample basic 2",
"data_type": "Integer",
"input_type": "Pull-down Menu",
"data_set": [
{
"value": "0",
"row_num": 1,
"status": "Active",
"label": "first",
"is_default": "No"
},
{
"value": "1",
"row_num": 2,
"status": "Active",
"label": "Fixed Amount",
"is_default": "Yes"
},
{
"value": "2",
"row_num": 3,
"status": "Active",
"label": "last",
"is_default": "No"
}
],
"used": "",
"category": "Company"
}
],
"message": [
{
"message": "success",
"data_definition": "sample basic 1",
"status": 200
},
{
"message": "success",
"data_definition": "sample basic 2",
"status": 200
}
],
"status": 200
}
Create DD Cost Code type
Input JSON field description:
Required Fields:
name: specify the field definition name
type: Cost Codes
label : has to be specified.
input_type: Text Box, Pull-down Menu are possible values.
Non-required Fields:
default value: Default value can be set.
data_set: Value and Labels are applicable for Pull down menu.
dataset_non_modifiable: Yes/No.
Notes:
Category will be defaulted to "CBS Code" in case of cost codes type of data definition.
type is case insensitive.
dataset_non_modifiable is case insensitive.
Cost Codes type input JSON
{
"options":{
"type": "Cost Codes"
},
"data": [{
"name": "sample costcode 1",
"input_type": "Text Box",
"label": "Test 1"
},
{
"name": "sample costcode 2",
"input_type": "Pull-down Menu",
"label": "Test 2",
"dataset_non_modifiable": "No",
"data_set": [{
"value": "Type 1",
"label": "first",
"row_num": 1,
"status": "Active",
"is_default": "Yes"
},
{
"value": "Type 2",
"label": "Fixed Amount",
"row_num": 2,
"status": "Active",
"is_default": "No"
},
{
"value": "Type 3",
"label": "last",
"row_num": 3,
"status": "Inactive",
"is_default": "No"
}
]
}
]
}
Output:
JSON object containing 'status', 'data', 'message'
Cost Codes type output JSON
{
"data": [
{
"data_size": "32",
"name": "sample costcode 1",
"data_type": "String",
"input_type": "Text Box",
"default_value": "",
"used": "",
"label": "Test 1",
"category": "CBS Code"
},
{
"data_size": "32",
"dataset_non_modifiable": "No",
"name": "sample costcode 2",
"data_type": "String",
"input_type": "^ull-down Menu",
"data_set": [
{
"value": "Type 1",
"row_num": 1,
"status": "Active",
"label": "first",
"is_default": "Yes"
},
{
"value": "Type 2",
"row_num": 2,
"status": "Active",
"label": "Fixed Amount",
"is_default": "No"
},
{
"value": "Type 3",
"row_num": 3,
"status": "Inactive",
"label": "last",
"is_default": "No"
}
],
"used": "",
"label": "Test 2",
"category": "CBS Code"
}
],
"message": [
{
"message": "success",
"data_definition": "sample costcode 1",
"status": 200
},
{
"message": "success",
"data_definition": "sample costcode 2",
"status": 200
}
],
"status": 200
}
Create DD Data Picker type
Input JSON field description:
Required Fields:
name: specify the field definition name
category: Business process, Shell Manager, Planning Items, Resource Manager, User Attributes and Space Manager are the system defined categories. You can provide other category values based on the modules loaded in the environment, for ex: Material Inventory Manager.
data_source: name of the data source for the given category
data_element: provide the data element for the selected data source.
type: Data Picker
Note: Type is case insensitive.
Data Picker type input JSON
{
"options":{
"type": "Data Picker"
},
"data": [{
"name": "sample dp 1",
"category": "Business Process",
"data_source": "Vendors",
"data_element": "uuu_user_name"
},
{
"name": "sample dp 2",
"category": "Shell Manager",
"data_source": "Buildings",
"data_element": "uBuildingNumber"
}
]
}
Output:
JSON object containing 'status', 'data', 'message'
Data Picker type output JSON
{
"data": [
{
"data_element": "uBuildingNumber",
"display_element": "Building Code",
"name": "sample dp 2",
"used": "",
"category": "Shell Manager",
"data_source": "Buildings"
}
],
"message": [
{
"message": "invalid data element provided for Vendors",
"data_definition": "sample dp 1",
"status": 619
},
{
"message": "success",
"data_definition": "sample dp 2",
"status": 200
}
],
"status": 3000
}
Status codes are:
1> 200, for success
2> 3000, for partial create.
3> 3002, for invalid JSON input
4> 1101, for Empty or Invalid JSON data
5> 619, for invalid field value
6> 620, for input is required.