Options
All
  • Public
  • Public/Protected
  • All
Menu

This class represents the entity "A_ProductClass" of service "API_CLFN_PRODUCT_SRV". This service is part of the following communication scenarios: Product Classification Integration (SAP_COM_0309). See https://api.sap.com/api/API_CLFN_PRODUCT_SRV for more information.

Hierarchy

  • Entity
    • ProductClass

Implements

Index

Constructors

constructor

  • Returns ProductClass

Properties

Protected _customFields

_customFields: MapType<any>

A mapper representing custom fields in an entity. Custom fields are represented by their field names and the corresponding values. A custom field can be added or updated using setCustomField method.

Protected _versionIdentifier

_versionIdentifier: string

The current ETag version of the entity in the remote system. The ETag identified the version of the in the remote system. It will be automatically set in the "if-match" header of update requests and can be set as a custom header for delete requests. When no ETag is provided by the remote system the value of this variable defaults to "*".

Optional changeNumber

changeNumber: undefined | string

Change Number. Number used to uniquely identify a change master record. If you make a change with reference to a change number, or create an object with a change number, the following functions are at your disposal: The system determines the validity conditions The conditions that the change is effective under can be defined in the change master record as follows: Changes with a date validity (valid-from date) Changes with parameter effectivity (for example: serial no. effectivity) Log of the changes made Documentation of the changes Assignment of a revision level to a change state of a material or document Release of changes for the different areas in the company. Maximum length: 12.

nullable

classInternalId

classInternalId: string

Internal Class Number. Maximum length: 10.

Optional classType

classType: undefined | string

Class Type. Uniquely identifies the class type. Maximum length: 3.

nullable

Optional keyDate

keyDate: Moment

Key Date.

nullable

product

product: string

Key of Object to be Classified. Maximum length: 90.

Protected remoteState

remoteState: object

The remote state of the entity. Remote state refers to the last known state of the entity on the remote system from which it has been retrieved or to which it has been posted. It is stored as map, where the keys are stored in the format of VDM properties.

Type declaration

  • [keys: string]: any

toCharacteristics

toCharacteristics: ProductClassCharc[]

One-to-many navigation property to the ProductClassCharc entity.

toClassDetails

toClassDetails: ClfnClassForKeyDate

One-to-one navigation property to the ClfnClassForKeyDate entity.

versionIdentifier

versionIdentifier: string

ETag version identifier accessor.

returns

The ETag version identifier of the retrieved entity, returns undefined if not retrieved

Static ALL_FIELDS

ALL_FIELDS: AllFields<ProductClass> = new AllFields('*', ProductClass)

All fields selector.

Static CHANGE_NUMBER

CHANGE_NUMBER: StringField<ProductClass> = new StringField('ChangeNumber', ProductClass, 'Edm.String')

Static representation of the changeNumber property for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static CLASS_INTERNAL_ID

CLASS_INTERNAL_ID: StringField<ProductClass> = new StringField('ClassInternalID', ProductClass, 'Edm.String')

Static representation of the classInternalId property for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static CLASS_TYPE

CLASS_TYPE: StringField<ProductClass> = new StringField('ClassType', ProductClass, 'Edm.String')

Static representation of the classType property for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static KEY_DATE

KEY_DATE: DateField<ProductClass> = new DateField('KeyDate', ProductClass, 'Edm.DateTime')

Static representation of the keyDate property for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static PRODUCT

PRODUCT: StringField<ProductClass> = new StringField('Product', ProductClass, 'Edm.String')

Static representation of the product property for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static TO_CHARACTERISTICS

TO_CHARACTERISTICS: Link<ProductClass, ProductClassCharc> = new Link('to_Characteristics', ProductClass, ProductClassCharc)

Static representation of the one-to-many navigation property toCharacteristics for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static TO_CLASS_DETAILS

TO_CLASS_DETAILS: OneToOneLink<ProductClass, ClfnClassForKeyDate> = new OneToOneLink('to_ClassDetails', ProductClass, ClfnClassForKeyDate)

Static representation of the one-to-one navigation property toClassDetails for query construction. Use to reference this property in query operations such as 'select' in the fluent request API.

Static _allFields

_allFields: Array<StringField<ProductClass> | DateField<ProductClass> | Link<ProductClass, ProductClassCharc> | OneToOneLink<ProductClass, ClfnClassForKeyDate>> = [ProductClass.PRODUCT,ProductClass.CLASS_INTERNAL_ID,ProductClass.KEY_DATE,ProductClass.CHANGE_NUMBER,ProductClass.CLASS_TYPE,ProductClass.TO_CHARACTERISTICS,ProductClass.TO_CLASS_DETAILS]

All fields of the ProductClass entity.

Static _defaultServicePath

_defaultServicePath: string = "/sap/opu/odata/sap/API_CLFN_PRODUCT_SRV"

Default url path for the according service.

Static _entityName

_entityName: string = "A_ProductClass"

Technical entity name for ProductClass.

Static _keyFields

_keyFields: Array<Selectable<ProductClass>> = [ProductClass.PRODUCT, ProductClass.CLASS_INTERNAL_ID]

All key fields of the ProductClass entity.

Static _keys

_keys: object = ProductClass._keyFields.reduce((acc: { [keys: string]: Selectable<ProductClass> }, field: Selectable<ProductClass>) => {acc[field.fieldName] = field;return acc;}, {})

Mapping of all key field names to the respective static field property ProductClass.

Type declaration

Static _serviceName

_serviceName: string = "API_CLFN_PRODUCT_SRV"
deprecated

Since v1.0.1 Use _defaultServicePath instead. Technical service name for ProductClass.

Methods

Protected getCurrentMapKeys

  • getCurrentMapKeys(): Entity
  • Returns a map of all defined fields in entity to their current values.

    Returns Entity

    Entity with all defined entity fields

getCustomField

  • getCustomField(fieldName: string): any
  • Custom field value getter.

    Parameters

    • fieldName: string

      The name of the custom field

    Returns any

    The value of the corresponding custom field

getCustomFields

  • getCustomFields(): MapType<any>
  • Returns a map that contains all entity custom fields.

    Returns MapType<any>

    A map of all defined custom fields in the entity

getUpdatedCustomFields

  • getUpdatedCustomFields(): MapType<any>
  • Returns all updated custom field properties compared to the last known remote state.

    Returns MapType<any>

    A map containing all updated custom properties, with their new values

getUpdatedProperties

  • getUpdatedProperties(): Entity
  • Returns all changed properties compared to the last known remote state. The returned properties does not include custom fields. Use getUpdatedCustomFields, if updated custom fields are needed.

    Returns Entity

    Entity with all properties that changed

hasCustomField

  • hasCustomField(fieldName: string): boolean
  • Validates whether a custom field exists in the entity.

    Parameters

    • fieldName: string

      The name of the custom field to update

    Returns boolean

    A boolean value, that indicates whether a custom field is defined in entity

initializeCustomFields

  • initializeCustomFields(customFields: MapType<any>): this
  • Sets all retrieved custom fields in entity.

    Parameters

    • customFields: MapType<any>

      Extracted custom fields from a retrieved entity

    Returns this

    A boolean value, that indicates the existence of the field in entity

Protected isConflictingCustomField

  • isConflictingCustomField(customFieldName: string): boolean
  • Validates whether a field name does not conflict with an original field name and thus can be defined as custom fields.

    Parameters

    • customFieldName: string

      Field name to check

    Returns boolean

    Boolean value that describes whether a field name can be defined as custom field

setCustomField

  • setCustomField(fieldName: string, value: any): this
  • Sets a new custom field in the entity or updates it. Throws an error, if the provided custom field name is already defined by an original field in entity.

    Parameters

    • fieldName: string

      The name of the custom field to update

    • value: any

      The value of the field

    Returns this

    The entity itself, to facilitate method chaining

setOrInitializeRemoteState

  • setOrInitializeRemoteState(state?: MapType<any>): this
  • Initializes or sets the remoteState of the entity. This function is called on all read, create and update requests. This function should be called after initializeCustomFields, if custom fields are defined.

    deprecated

    Since 1.12.0. Will be removed in version 2.0.

    Parameters

    • Optional state: MapType<any>

      State to be set as remote state

    Returns this

    The entity itself, to facilitate method chaining

setVersionIdentifier

  • setVersionIdentifier(etag: string | undefined): this
  • Set the ETag version identifier of the retrieved entity.

    Parameters

    • etag: string | undefined

      The returned ETag version of the entity

    Returns this

    The entity itself, to facilitate method chaining

toJSON

  • toJSON(): object
  • Overwrites the default toJSON method so that all instance variables as well as all custom fields of the entity are returned.

    Returns object

    An object containing all instance variables + custom fields.

    • [key: string]: any

Static builder

Static customField

  • Returns a selectable object that allows the selection of custom field in a get request for the entity ProductClass.

    Parameters

    • fieldName: string

      Name of the custom field to select

    Returns CustomField<ProductClass>

    A builder that constructs instances of entity type ProductClass.

Static Protected customFieldSelector

  • customFieldSelector<EntityT>(fieldName: string, entityConstructor: Constructable<EntityT>): CustomField<EntityT>
  • Type parameters

    • EntityT: Entity

    Parameters

    • fieldName: string
    • entityConstructor: Constructable<EntityT>

    Returns CustomField<EntityT>

Static Protected entityBuilder

  • entityBuilder<EntityT, EntityTypeForceMandatoryT>(entityConstructor: Constructable<EntityT, EntityTypeForceMandatoryT>): EntityBuilderType<EntityT, EntityTypeForceMandatoryT>
  • Type parameters

    • EntityT: Entity

    • EntityTypeForceMandatoryT

    Parameters

    • entityConstructor: Constructable<EntityT, EntityTypeForceMandatoryT>

    Returns EntityBuilderType<EntityT, EntityTypeForceMandatoryT>

Static requestBuilder

  • Returns a request builder to construct requests for operations on the ProductClass entity type.

    Returns ProductClassRequestBuilder

    A ProductClass request builder.