Record Query ValidValues Service - Outputs

RecordAttribute

The data for each record attribute is returned as a ‘RecordAttribute’ entity, that is related to the ‘MasterCatalogRecord’ entity.

RelationshipAttribute

The data for each relationship attribute for specified Relationship is returned as a 'RelationshipAttribute' entity.

The following data is returned for each attribute, RecordAttribute or RelationshipAttribute.

  • Initial value for an attribute
  • Access modifier for an attribute.
  • List of valid values configured for an attribute.

Selected or Initial Value for an Attribute

The ‘Values’ element inside the ‘RecordAttribute’ or ’RelationshipAttribute’ is used to return the initial value, per rulebase configurations, for a new record.

The value is not returned in cases where access is denied to an attribute, that is, when ‘Visibility’ is set to ‘HIDE’.

Visibility of an Attribute

The ‘Visibility’ element inside the ‘RecordAttribute’ or ’RelationshipAttribute’ denotes the kind of access the user of the service has to the attribute. The possible values are ‘HIDE’, ‘MODIFY’ and ’VIEW’.

Valid Values of an Attribute

The ‘ValidValues’ element inside the ‘RecordAttribute’ or ’RelationshipAttribute’ contains a list of valid values configured for an attribute. In most cases, this list is used to display a drop-down list.

A sample of valid values response for relationship attribute-

<Relationship>
	<RelationType>Contains</RelationType>
	<RelatedEntities>
		<MasterCatalogRecord etype="Entity">
			<ExternalKeys>
  				<Key name="MASTERCATALOGNAME"    type="string">TEST_VALIDVALUES
						</Key>
  				<Key name="PRODUCTID" type="string">bchild</Key>
  				<Key name="PRODUCTIDEXT" type="string">bchild</Key>
			</ExternalKeys>
			<RelationshipData>
 				<Relationship>
 					<RelationType>RelationshipAttributeValidValues</RelationType>
 					<RelatedEntities>
 						<RecordAttribute etype="Entity">
 							<ExternalKeys>
    								<Key name="name" type="string">SIZE</Key>
 							</ExternalKeys>
							<EntityData xsi:type="RecordAttributeEntityDataType">
								<Value type="string">L</Value>
								<Visibility type="string">MODIFY</Visibility>
								<ValidValues type="map">
									<Entry>
  										<Key type="string">XL</Key>
  										<Value type="string">XL</Value>
									</Entry>
									<Entry>
										  <Key type="string">L</Key>
										  <Value type="string">L</Value>
									</Entry>
								</ValidValues>
							</EntityData>
						</RecordAttribute>
						<RecordAttribute etype="Entity">
							<ExternalKeys>
   								<Key name="name" type="string">QUANTITY</Key>
							</ExternalKeys>
							<EntityData xsi:type="RecordAttributeEntityDataType">
								<Visibility type="string">hide</Visibility>
							</EntityData>
						</RecordAttribute>
					</RelatedEntities>
				</Relationship>
			</RelationshipData>
		</MasterCatalogRecord>
	</RelatedEntities>
</Relationship>

Multi-Value Drop Downs Values of a Record Attribute

Some of the attributes in a record might be represented as multi-value drop-down elements. The lists of valid values for these elements are represented as ‘ValidValues’, as described in the following format. Note the ‘type’ attribute is set to ‘marray’ (different from ‘map’ from a single value drop-down described in the previous section).

The first ‘Value’ element in an ‘Entry’ represents the value to be saved or sent to the server. Each of the values after the first one is a column in the multi-value drop down.

Available List of Valid Relationship Types

The list of valid relationship types for a given record are modeled as a ‘RecordAttribute’ with external key ‘name’=’RELATIONSHIP_ LIST’. The ‘Value’ element in the RecordAttribute provides the default relationship type for a given record.

The service also shows the record attribute on which the relationship list is dependent.

Work Item Reference

When a queried record is part of a work item, the response contains the context variable ‘WORKITEMREFERENCE’ that references the work item.

<Context>
 	<Variable name="WORKITEMREFERENCE" type="string">10001</Variable>
</Context>

Work item reference is usually used when the Record Validate Service is called.