I_AssetTP

DDL: I_ASSETTP SQL: IASSETTP Type: view TRANSACTIONAL

Asset

I_AssetTP is a Transactional CDS View that provides data about "Asset" in SAP S/4HANA. It reads from 1 data source (I_FixedAsset) and exposes 163 fields with key fields CompanyCode, MasterFixedAsset, FixedAsset. It has 9 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_FixedAsset FixedAsset from

Associations (9)

CardinalityTargetAliasCondition
[1..*] I_AssetAssignmentTP _AssetAssignmentTP $projection.CompanyCode = _AssetAssignmentTP.CompanyCode and $projection.MasterFixedAsset = _AssetAssignmentTP.MasterFixedAsset and $projection.FixedAsset = _AssetAssignmentTP.FixedAsset
[1..*] I_AssetLedgerTP _AssetLedgerTP $projection.CompanyCode = _AssetLedgerTP.CompanyCode and $projection.MasterFixedAsset = _AssetLedgerTP.MasterFixedAsset and $projection.FixedAsset = _AssetLedgerTP.FixedAsset
[1..*] I_AssetValuationTP _AssetValuationTP $projection.CompanyCode = _AssetValuationTP.CompanyCode and $projection.MasterFixedAsset = _AssetValuationTP.MasterFixedAsset and $projection.FixedAsset = _AssetValuationTP.FixedAsset
[0..1] I_GlobAssetTP _GlobAssetTP $projection.CompanyCode = _GlobAssetTP.CompanyCode and $projection.MasterFixedAsset = _GlobAssetTP.MasterFixedAsset and $projection.FixedAsset = _GlobAssetTP.FixedAsset
[0..*] I_GlobAssetAssignmentTP _GlobAssetAssignmentTP $projection.CompanyCode = _GlobAssetAssignmentTP.CompanyCode and $projection.MasterFixedAsset = _GlobAssetAssignmentTP.MasterFixedAsset and $projection.FixedAsset = _GlobAssetAssignmentTP.FixedAsset
[0..*] I_GlobAssetPreciousMaterialsTP _GlobAssetPreciousMaterialsTP $projection.CompanyCode = _GlobAssetPreciousMaterialsTP.CompanyCode and $projection.MasterFixedAsset = _GlobAssetPreciousMaterialsTP.MasterFixedAsset and $projection.FixedAsset = _GlobAssetPreciousMaterialsTP.FixedAsset
[0..1] I_WBSElementBasicData _InvestmentProjectWBSElement $projection.InvestmentProjectWBSElement = _InvestmentProjectWBSElement.WBSElementInternalID
[0..*] I_AssetMultipleCreationTP _AssetMultipleCreationTP $projection.CompanyCode = _AssetMultipleCreationTP.CompanyCode and $projection.MasterFixedAsset = _AssetMultipleCreationTP.MasterFixedAsset and $projection.FixedAsset = _AssetMultipleCreationTP.FixedAsset
[1..1] E_FixedAsset _Extension $projection.CompanyCode = _Extension.CompanyCode and $projection.MasterFixedAsset = _Extension.MasterFixedAsset and $projection.FixedAsset = _Extension.FixedAsset

Annotations (19)

NameValueLevelField
AbapCatalog.sqlViewName IASSETTP view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
EndUserText.label Asset view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #TRANSACTIONAL view
ObjectModel.writeActivePersistence IASSETTP view
ObjectModel.writeDraftPersistence FAAD_MD_ROOT view
ObjectModel.entityChangeStateId LastChangeDateTime view
ObjectModel.transactionalProcessingEnabled true view
ObjectModel.draftEnabled true view
ObjectModel.modelCategory #BUSINESS_OBJECT view
ObjectModel.compositionRoot true view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XXL view
ObjectModel.usageType.dataClass #MASTER view

Fields (163)

KeyFieldSource TableSource FieldDescription
KEY CompanyCode CompanyCode
KEY MasterFixedAsset MasterFixedAsset
KEY FixedAsset FixedAsset
FixedAssetExternalID FixedAssetExternalID
MasterFixedAssetForEdit MasterFixedAsset
FixedAssetForEdit FixedAsset
ChangeDocumentUUID
AssetCompletenessStatus AssetCompletenessStatus
AssetLifecycleStatus AssetLifecycleStatus
AssetUnderConstructionStatus AssetUnderConstructionStatus
IsMainAsset IsMainAsset
HasHistory HasHistory
AccountIsBlockedForPosting AccountIsBlockedForPosting
AssetIsForPostCapitalization AssetIsForPostCapitalization
CreatedByUser CreatedByUser
CreationDate CreationDate
CreationDateTime CreationDateTime
LastChangedByUser LastChangedByUser
LastChangeDate LastChangeDate
LastChangeDateTime LastChangeDateTime
AssetCreationValidityDate AssetCreationValidityDate
AssetClass AssetClass
AssetScreenLayout AssetScreenLayout
AssetAccountDetermination AssetAccountDetermination
FixedAssetOrderDate FixedAssetOrderDate
FixedAssetDescription FixedAssetDescription
AssetAdditionalDescription AssetAdditionalDescription
AssetSerialNumber AssetSerialNumber
Inventory Inventory
Supplier Supplier
AssetCountryOfOrigin AssetCountryOfOrigin
AssetManufacturerName AssetManufacturerName
OriginalMasterFixedAsset OriginalMasterFixedAsset
OriginalFixedAsset OriginalFixedAsset
OriginalFixedAssetValueDate OriginalFixedAssetValueDate
OriginalAcquisitionFiscalYear OriginalAcquisitionFiscalYear
InHouseProdnPercent InHouseProdnPercent
AssetTypeName AssetTypeName
PartnerCompany PartnerCompany
OriginalAcquisitionCurrency OriginalAcquisitionCurrency
OriginalAcquisitionAmount OriginalAcquisitionAmount
LastInventoryDate LastInventoryDate
InventoryNote InventoryNote
InvestmentOrder InvestmentOrder
InvestmentProjectWBSElement InvestmentProjectWBSElement
InventoryIsCounted InventoryIsCounted
InvestmentReason InvestmentReason
EnvrnmtlInvestmentReason EnvrnmtlInvestmentReason
FixedAssetGroup FixedAssetGroup
PropertyClass PropertyClass
FixedAssetPropertyType FixedAssetPropertyType
LocalTaxOffice LocalTaxOffice
NoticeOfAssessmentTaxID NoticeOfAssessmentTaxID
LastAssessmentNoticeDate LastAssessmentNoticeDate
Municipality Municipality
LandRegisterDate LandRegisterDate
LandRegisterEntrySequence LandRegisterEntrySequence
LandRegisterEntryDate LandRegisterEntryDate
LandRegisterVolume LandRegisterVolume
LandRegisterPage LandRegisterPage
LandRegisterMap LandRegisterMap
LandPlot LandPlot
ConveyanceDate ConveyanceDate
AreaSize AreaSize
AreaSizeUnit AreaSizeUnit
LeaseSupplier LeaseSupplier
LeaseAgreement LeaseAgreement
LeaseAgreementDate LeaseAgreementDate
LeaseTermEndDate LeaseTermEndDate
LeaseTermStartDate LeaseTermStartDate
LeaseDurationInFiscalYears LeaseDurationInFiscalYears
LeaseDurationInFiscalPeriods LeaseDurationInFiscalPeriods
LeaseType LeaseType
LeasedAssetNote LeasedAssetNote
AssetIsRealEstate AssetIsRealEstate
LastReorganizationDate LastReorganizationDate
LegacyAsset LegacyAsset
LegacyMasterFixedAsset LegacyMasterFixedAsset
LegacyFixedAsset LegacyFixedAsset
LegacyFixedAssetCompanyCode LegacyFixedAssetCompanyCode
LegacyDataTransferDate LegacyDataTransferDate
LegacyDataTransferSequence LegacyDataTransferSequence
AssetIsAcquiredUsed AssetIsAcquiredUsed
BaseUnit BaseUnit
FixedAssetCallerCode
ObjectInternalID ObjectInternalID
AssetAuthorizationContext AssetAuthorizationContext
AssetMultipleCreationStatus
Country _GlobAssetTP Country
NationalClassification _GlobAssetTP NationalClassification
_FixedAssetNatlClfnText _GlobAssetTP _FixedAssetNatlClfnText
NationalClassificationDesc _GlobAssetTP NationalClassificationDesc
TaxDepreciationGroup _GlobAssetTP TaxDepreciationGroup
_TaxDepreciationGroupText _GlobAssetTP _TaxDepreciationGroupText
TaxDepreciationGroupDesc _GlobAssetTP TaxDepreciationGroupDesc
RU_LongSerialNumber _GlobAssetTP RU_LongSerialNumber
RU_WorkwearMaterial _GlobAssetTP RU_WorkwearMaterial
RU_RetiredMasterFixedAsset _GlobAssetTP RU_RetiredMasterFixedAsset
RU_RetiredFixedAsset _GlobAssetTP RU_RetiredFixedAsset
RU_AssetTransportType _GlobAssetTP RU_AssetTransportType
RU_VehicleIdNumber _GlobAssetTP RU_VehicleIdNumber
RU_ManufacturingDate _GlobAssetTP RU_ManufacturingDate
RU_VehicleEcologicalClass _GlobAssetTP RU_VehicleEcologicalClass
RU_PropertyAddress _GlobAssetTP RU_PropertyAddress
RU_PropertyOwnershipRegnDate _GlobAssetTP RU_PropertyOwnershipRegnDate
RU_PropertyOwnershipTermnDate _GlobAssetTP RU_PropertyOwnershipTermnDate
RU_ProdTraceabilityStartDate _GlobAssetTP RU_ProdTraceabilityStartDate
RU_ProdTraceabilityEndDate _GlobAssetTP RU_ProdTraceabilityEndDate
RU_AssetTNVED _GlobAssetTP RU_AssetTNVED
ChartOfAccounts _GlobAssetTP ChartOfAccounts
ChartOfAccountsText _GlobAssetTP ChartOfAccountsText
GLAccount _GlobAssetTP GLAccount
GLAccountText _GlobAssetTP GLAccountText
JP_Annex16AssetStructure _GlobAssetTP JP_Annex16AssetStructure
_JP_Annex16AssetStruc _GlobAssetTP _JP_Annex16AssetStruc
JP_Annex16AssetStructureDesc _GlobAssetTP JP_Annex16AssetStructureDesc
_JP_Annex16AssetItem _GlobAssetTP _JP_Annex16AssetItem
JP_Annex16AssetItem _GlobAssetTP JP_Annex16AssetItem
JP_Annex16AssetItemDesc _GlobAssetTP JP_Annex16AssetItemDesc
JP_Annex16LeasingAgrmtDate _GlobAssetTP JP_Annex16LeasingAgrmtDate
JP_PrptyTxRptCity _GlobAssetTP JP_PrptyTxRptCity
JP_PrptyTxRptClassfctnKey _GlobAssetTP JP_PrptyTxRptClassfctnKey
JP_PrptyTxRptSpclDepr _GlobAssetTP JP_PrptyTxRptSpclDepr
JP_PrptyTxRptAddlDepr _GlobAssetTP JP_PrptyTxRptAddlDepr
IN_AssetBlock _GlobAssetTP IN_AssetBlock
IN_AssetPutToUseDate _GlobAssetTP IN_AssetPutToUseDate
IN_AdditionalAssetBlock _GlobAssetTP IN_AdditionalAssetBlock
IN_AssetIsResearchAndDev _GlobAssetTP IN_AssetIsResearchAndDev
IN_AssetIsPriorYear _GlobAssetTP IN_AssetIsPriorYear
PT_VehicleTypeByEnergy _GlobAssetTP PT_VehicleTypeByEnergy
PT_VehicleIsWithoutLimit _GlobAssetTP PT_VehicleIsWithoutLimit
PT_BigRepairAssetLink _GlobAssetTP PT_BigRepairAssetLink
PT_LandAssetLink _GlobAssetTP PT_LandAssetLink
PT_AssetReportFormCategory _GlobAssetTP PT_AssetReportFormCategory
PT_AmortizedAssetIsReevaluated _GlobAssetTP PT_AmortizedAssetIsReevaluated
RS_GroupDeprExclusionYear _GlobAssetTP RS_GroupDeprExclusionYear
RS_AssetLastInvoiceDate _GlobAssetTP RS_AssetLastInvoiceDate
_FixedAssetAssgmt _FixedAssetAssgmt
_CompanyCode _CompanyCode
_MasterFixedAsset _MasterFixedAsset
_AssetClass _AssetClass
_UnitOfMeasure _UnitOfMeasure
_PartnerCompany _PartnerCompany
_AssetAccountDetermination _AssetAccountDetermination
_Supplier _Supplier
_AssetCountryOfOrigin _AssetCountryOfOrigin
_InvestmentReason _InvestmentReason
_EnvrnmtlInvestmentReason _EnvrnmtlInvestmentReason
_FixedAssetPropertyType _FixedAssetPropertyType
_FixedAssetGroup _FixedAssetGroup
_InvestmentOrder _InvestmentOrder
_AssetLifecycleStatus _AssetLifecycleStatus
_AssetCompletenessStatus _AssetCompletenessStatus
_AssetUnderConstructionStatus _AssetUnderConstructionStatus
_FixedAssetCountryData _FixedAssetCountryData
_OriginalAcquisitionCurrency _OriginalAcquisitionCurrency
_AssetAssignmentTP _AssetAssignmentTP
_AssetLedgerTP _AssetLedgerTP
_AssetValuationTP _AssetValuationTP
_GlobAssetTP _GlobAssetTP
_GlobAssetAssignmentTP _GlobAssetAssignmentTP
_GlobAssetPreciousMaterialsTP _GlobAssetPreciousMaterialsTP
_AssetMultipleCreationTP _AssetMultipleCreationTP
@AbapCatalog.sqlViewName: 'IASSETTP'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Asset'
@ClientHandling.algorithm: #SESSION_VARIABLE
@VDM.viewType: #TRANSACTIONAL
//@Metadata.allowExtensions: true

@ObjectModel: {
    writeActivePersistence:          'IASSETTP',
    writeDraftPersistence:           'FAAD_MD_ROOT',
    semanticKey:                     ['CompanyCode', 'MasterFixedAsset', 'FixedAsset'],
    entityChangeStateId:             'LastChangeDateTime',
    transactionalProcessingEnabled:  true,
    draftEnabled: true,
    modelCategory:                   #BUSINESS_OBJECT,
    compositionRoot:                 true,
    createEnabled:                   true,
    updateEnabled:                   true,
    deleteEnabled:                   true,
    usageType: {
        serviceQuality: #B,
        sizeCategory: #XXL,
        dataClass: #MASTER
    }
}
 
define view I_AssetTP
  as select from I_FixedAsset as FixedAsset 

  association [1..*] to I_AssetAssignmentTP            as _AssetAssignmentTP            on  $projection.CompanyCode      = _AssetAssignmentTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _AssetAssignmentTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _AssetAssignmentTP.FixedAsset

  association [1..*] to I_AssetLedgerTP                as _AssetLedgerTP                on  $projection.CompanyCode      = _AssetLedgerTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _AssetLedgerTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _AssetLedgerTP.FixedAsset

  association [1..*] to I_AssetValuationTP             as _AssetValuationTP             on  $projection.CompanyCode      = _AssetValuationTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _AssetValuationTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _AssetValuationTP.FixedAsset

  association [0..1] to I_GlobAssetTP                  as _GlobAssetTP                  on  $projection.CompanyCode      = _GlobAssetTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _GlobAssetTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _GlobAssetTP.FixedAsset

  association [0..*] to I_GlobAssetAssignmentTP        as _GlobAssetAssignmentTP        on  $projection.CompanyCode      = _GlobAssetAssignmentTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _GlobAssetAssignmentTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _GlobAssetAssignmentTP.FixedAsset

  association [0..*] to I_GlobAssetPreciousMaterialsTP as _GlobAssetPreciousMaterialsTP on  $projection.CompanyCode      = _GlobAssetPreciousMaterialsTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _GlobAssetPreciousMaterialsTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _GlobAssetPreciousMaterialsTP.FixedAsset

  association [0..1] to I_WBSElementBasicData          as _InvestmentProjectWBSElement  on  $projection.InvestmentProjectWBSElement = _InvestmentProjectWBSElement.WBSElementInternalID

  //  association [0..*] to I_GlobAssetValuationTP         as _GlobAssetValuationTP         on  $projection.CompanyCode      = _GlobAssetValuationTP.CompanyCode

  //                                                                                        and $projection.MasterFixedAsset = _GlobAssetValuationTP.MasterFixedAsset

  //                                                                                        and $projection.FixedAsset       = _GlobAssetValuationTP.FixedAsset


  association [0..*] to I_AssetMultipleCreationTP      as _AssetMultipleCreationTP      on  $projection.CompanyCode      = _AssetMultipleCreationTP.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _AssetMultipleCreationTP.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _AssetMultipleCreationTP.FixedAsset


  association [1..1] to E_FixedAsset                   as _Extension                    on  $projection.CompanyCode      = _Extension.CompanyCode
                                                                                        and $projection.MasterFixedAsset = _Extension.MasterFixedAsset
                                                                                        and $projection.FixedAsset       = _Extension.FixedAsset
                                                                                        
//  association [1..1] to E_Asset                        as _Extension_New                on  $projection.MasterFixedAsset = _Extension_New.MasterFixedAsset

//                                                                                        and $projection.FixedAsset       = _Extension_New.FixedAsset

//                                                                                        and $projection.CompanyCode      = _Extension_New.companycode


{
        // Keys and IDs

        @ObjectModel.mandatory: true
        @ObjectModel.foreignKey.association: '_CompanyCode'
  key   CompanyCode,

        @ObjectModel.mandatory: true
        @ObjectModel.foreignKey.association: '_MasterFixedAsset'
  key   MasterFixedAsset,


  key   FixedAsset,

        @ObjectModel:{ mandatory: 'false', readOnly:'true'}
        FixedAssetExternalID,

        @ObjectModel:{ readOnly:'true'}
        @ObjectModel.editableFieldFor: 'MasterFixedAsset'
        MasterFixedAsset                                                            as MasterFixedAssetForEdit,

        @ObjectModel:{ readOnly:'true'}
        @ObjectModel.editableFieldFor: 'FixedAsset'
        @ObjectModel.text.element: null
        FixedAsset                                                                  as FixedAssetForEdit,

        (concat(concat( rpad( CompanyCode, 4, ' ' ), MasterFixedAsset),FixedAsset)) as ChangeDocumentUUID,


        // Status and Action Management

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        //@ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //        @ObjectModel.text.element: ['AssetCompletenessStatusName']

        @ObjectModel.foreignKey.association: '_AssetCompletenessStatus'
        AssetCompletenessStatus,
        //@ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //_AssetCompletenessStatus._Text[1:Language = $session.system_language].AssetCompletenessStatusName,

        //cast (cast ( '' as abap.char(60) ) as faa_md_auc_status_text preserving type)                        as AssetCompletenessStatusName,


        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        //@ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //        @ObjectModel.text.element: ['AssetLifecycleStatusName']

        @ObjectModel.foreignKey.association: '_AssetLifecycleStatus'
        AssetLifecycleStatus                                                        as AssetLifecycleStatus,
        //@ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //        //_AssetLifecycleStatus._Text[1:Language = $session.system_language].AssetLifecycleStatusName,

        //cast (cast ( '' as abap.char(60) ) as faa_md_lc_status_text preserving type)                         as AssetLifecycleStatusName,


        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        //        @ObjectModel.text.element: ['AssetUndrConstructionStsName']

        @ObjectModel.foreignKey.association: '_AssetUnderConstructionStatus'
        AssetUnderConstructionStatus,

        //@ObjectModel:{ mandatory:'false', readOnly:'true'}

        // _AssetUnderConstructionStatus._Text[1:Language = $session.system_language].AssetUndrConstructionStsName,

        //cast (cast ( '' as abap.char(60) ) as faa_md_auc_status_text preserving type)                        as AssetUndrConstructionStsName,


        // Indicators

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        IsMainAsset,

        //        @ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //        IsGroupAsset,


        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        HasHistory,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        AccountIsBlockedForPosting,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        cast(
            (case
              when LegacyDataTransferDate is not null and LegacyDataTransferDate <> '00000000' then 'X'
              else cast ( '' as abap.char(1))
             end
            ) as faa_md_xlegacyasset )                                              as IsLegacyAsset,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        //cast(cast ( '' as abap.char(1))   as faa_md_xpostcap )                                                                                      as AssetIsForPostCapitalization,

        AssetIsForPostCapitalization,

        // User and Authorization Management

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        @Semantics.user.createdBy: true
        CreatedByUser,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        @Semantics.systemDate.createdAt: true
        CreationDate,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        CreationDateTime,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        @Semantics.user.lastChangedBy: true
        LastChangedByUser,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        @Semantics.systemDate.lastChangedAt: true
        LastChangeDate,

        @ObjectModel:{ mandatory: 'false',readOnly:'true'}
        LastChangeDateTime,

        // Fields

        AssetCreationValidityDate,

        @ObjectModel.foreignKey.association: '_AssetClass'
        AssetClass,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetScreenLayout,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetAccountDetermination,

        //cannot be read-only

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'false', enabled:'EXTERNAL_CALCULATION'}
        FixedAssetOrderDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        FixedAssetDescription,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetAdditionalDescription,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetSerialNumber,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        Inventory,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_Supplier'
        Supplier,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_AssetCountryOfOrigin'
        AssetCountryOfOrigin,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetManufacturerName,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        OriginalMasterFixedAsset,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        OriginalFixedAsset,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        OriginalFixedAssetValueDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        OriginalAcquisitionFiscalYear,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        InHouseProdnPercent,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetTypeName,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_PartnerCompany'
        PartnerCompany,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @Semantics.currencyCode
        OriginalAcquisitionCurrency,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @Semantics.amount.currencyCode: 'OriginalAcquisitionCurrency'
        OriginalAcquisitionAmount,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LastInventoryDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        InventoryNote,

        //Read-only or invisible

        @ObjectModel.foreignKey.association: '_InvestmentOrder'
        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        InvestmentOrder,

        //Read-only or invisible

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        InvestmentProjectWBSElement,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        InventoryIsCounted,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_InvestmentReason'
        InvestmentReason,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_EnvrnmtlInvestmentReason'
        EnvrnmtlInvestmentReason,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_FixedAssetGroup'
        FixedAssetGroup,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        PropertyClass,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_FixedAssetPropertyType'
        FixedAssetPropertyType,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LocalTaxOffice,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        NoticeOfAssessmentTaxID,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LastAssessmentNoticeDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        Municipality,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterEntrySequence,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterEntryDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterVolume                                                          as LandRegisterVolume,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterPage,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandRegisterMap,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LandPlot,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        ConveyanceDate,

        @Semantics.quantity.unitOfMeasure: 'AreaSizeUnit'
        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AreaSize,

        @Semantics.unitOfMeasure:true
        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AreaSizeUnit,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseSupplier,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseAgreement,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseAgreementDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseTermEndDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseTermStartDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseDurationInFiscalYears,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseDurationInFiscalPeriods,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeaseType,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LeasedAssetNote,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetIsRealEstate,

        //        @ObjectModel:{ mandatory: 'false',readOnly:'true'} //Not needed for CLOUD

        //        AssetSynchronizationRule,


        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LastReorganizationDate,

        //        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}

        //TODO: need to delete the Legacy Asset

        @UI.hidden: true
        LegacyAsset,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LegacyMasterFixedAsset,
        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LegacyFixedAsset,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LegacyFixedAssetCompanyCode,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LegacyDataTransferDate,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        LegacyDataTransferSequence,

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        AssetIsAcquiredUsed,
        //AssetStatusAtPurchase,


        //@ObjectModel:{ mandatory: 'false',readOnly:'true'}

        //Quantity,   //move to Ledger node

        @ObjectModel:{ mandatory:'EXTERNAL_CALCULATION', readOnly:'EXTERNAL_CALCULATION', enabled:'EXTERNAL_CALCULATION'}
        @ObjectModel.foreignKey.association: '_UnitOfMeasure'
        BaseUnit,

        //@ObjectModel.readOnly:true

        //cast ( cast('' as abap.char(10) ) as mseht preserving type )                                         as BaseUnitName,


        @Consumption.hidden: true //Added from CE2108 for technical usage

        cast (cast('' as abap.char(2)) as faa_md_caller_code preserving type  )     as FixedAssetCallerCode,

        @Consumption.hidden: true
        ObjectInternalID,
        @Consumption.hidden: true
        AssetAuthorizationContext,

        //Added for Multiple Creation in CE2202

        cast(cast('' as abap.char(1)) as faa_md_multi_creation_status preserving type )   as AssetMultipleCreationStatus,
      
        
        //====================================================================================================================

        //GLO Fields


        _GlobAssetTP.Country,

        _GlobAssetTP.NationalClassification,
        _GlobAssetTP._FixedAssetNatlClfnText,   //association

        _GlobAssetTP.NationalClassificationDesc,

        _GlobAssetTP.TaxDepreciationGroup,
        _GlobAssetTP._TaxDepreciationGroupText, //association

        _GlobAssetTP.TaxDepreciationGroupDesc,

        _GlobAssetTP.RU_LongSerialNumber,
        _GlobAssetTP.RU_WorkwearMaterial,
        _GlobAssetTP.RU_RetiredMasterFixedAsset,
        _GlobAssetTP.RU_RetiredFixedAsset,
        _GlobAssetTP.RU_AssetTransportType,
        _GlobAssetTP.RU_VehicleIdNumber,
        _GlobAssetTP.RU_ManufacturingDate,
        _GlobAssetTP.RU_VehicleEcologicalClass,
        _GlobAssetTP.RU_PropertyAddress,
        _GlobAssetTP.RU_PropertyOwnershipRegnDate,
        _GlobAssetTP.RU_PropertyOwnershipTermnDate,
        _GlobAssetTP.RU_ProdTraceabilityStartDate,
        _GlobAssetTP.RU_ProdTraceabilityEndDate,
        _GlobAssetTP.RU_AssetTNVED,

        _GlobAssetTP.ChartOfAccounts,
        _GlobAssetTP.ChartOfAccountsText,
        _GlobAssetTP.GLAccount,
        _GlobAssetTP.GLAccountText,
        _GlobAssetTP.JP_Annex16AssetStructure,
        _GlobAssetTP._JP_Annex16AssetStruc, //association

        _GlobAssetTP.JP_Annex16AssetStructureDesc,
        _GlobAssetTP._JP_Annex16AssetItem,  //association

        _GlobAssetTP.JP_Annex16AssetItem,
        _GlobAssetTP.JP_Annex16AssetItemDesc,
        _GlobAssetTP.JP_Annex16LeasingAgrmtDate,
        _GlobAssetTP.JP_PrptyTxRptCity,
        _GlobAssetTP.JP_PrptyTxRptClassfctnKey,
        _GlobAssetTP.JP_PrptyTxRptSpclDepr,
        _GlobAssetTP.JP_PrptyTxRptAddlDepr,

        _GlobAssetTP.IN_AssetBlock,
        _GlobAssetTP.IN_AssetPutToUseDate,
        _GlobAssetTP.IN_AdditionalAssetBlock,
        _GlobAssetTP.IN_AssetIsResearchAndDev,
        _GlobAssetTP.IN_AssetIsPriorYear,

        _GlobAssetTP.PT_VehicleTypeByEnergy,
        _GlobAssetTP.PT_VehicleIsWithoutLimit,
        _GlobAssetTP.PT_BigRepairAssetLink,
        _GlobAssetTP.PT_LandAssetLink,
        _GlobAssetTP.PT_AssetReportFormCategory,
        _GlobAssetTP.PT_AmortizedAssetIsReevaluated,
        _GlobAssetTP.RS_GroupDeprExclusionYear,
        _GlobAssetTP.RS_AssetLastInvoiceDate,
        

        // Associations


        _FixedAssetAssgmt,
        _CompanyCode,

        _MasterFixedAsset,
        _AssetClass,

        _UnitOfMeasure,
        _PartnerCompany,

        _AssetAccountDetermination,
        _Supplier,
        _AssetCountryOfOrigin,
        _InvestmentReason,
        _EnvrnmtlInvestmentReason,

        _FixedAssetPropertyType,

        _FixedAssetGroup,
        _InvestmentOrder,
        _AssetLifecycleStatus,
        _AssetCompletenessStatus,
        _AssetUnderConstructionStatus,

        _FixedAssetCountryData,

        _OriginalAcquisitionCurrency,



        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _AssetAssignmentTP,

        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _AssetLedgerTP,

        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _AssetValuationTP,

        _GlobAssetTP,

        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _GlobAssetAssignmentTP,

        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _GlobAssetPreciousMaterialsTP,

        @ObjectModel.association.type: #TO_COMPOSITION_CHILD
        _AssetMultipleCreationTP

        //@ObjectModel.association.type: #TO_COMPOSITION_CHILD

        //_GlobAssetValuationTP




}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_FIXEDASSET",
"I_GLOBASSETTP"
],
"ASSOCIATED":
[
"E_FIXEDASSET",
"I_ASSETACCTDETERMINATION",
"I_ASSETASSIGNMENTTP",
"I_ASSETCLASS",
"I_ASSETCOMPLETENESSSTATUS",
"I_ASSETLEDGERTP",
"I_ASSETLIFECYCLESTATUS",
"I_ASSETMULTIPLECREATIONTP",
"I_ASSETUNDERCONSTRUCTIONSTATUS",
"I_ASSETVALUATIONTP",
"I_COMPANYCODE",
"I_COUNTRY",
"I_CURRENCY",
"I_ENVRNMTLINVESTMENTREASON",
"I_FIXEDASSETASSGMT",
"I_FIXEDASSETCOUNTRYDATA",
"I_FIXEDASSETGROUP",
"I_FIXEDASSETNATLCLFNTEXT",
"I_FIXEDASSETPROPERTYTYPE",
"I_GLOBALCOMPANY",
"I_GLOBASSETASSIGNMENTTP",
"I_GLOBASSETPRECIOUSMATERIALSTP",
"I_GLOBASSETTP",
"I_INTERNALORDER",
"I_INVESTMENTREASON",
"I_JP_ANNEX16ASSETITEM",
"I_JP_ANNEX16ASSETSTRUC",
"I_MASTERFIXEDASSET",
"I_SUPPLIER",
"I_TAXDEPRECIATIONGROUPTEXT",
"I_UNITOFMEASURE",
"I_WBSELEMENTBASICDATA"
],
"BASE":
[
"I_FIXEDASSET",
"I_GLOBASSETTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/