All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sap.cloud.sdk.s4hana.datamodel.bapi.structures.FixedAssetDepreciationArea Maven / Gradle / Ivy

/*
 * Copyright (c) 2018 SAP SE or an SAP affiliate company. All rights reserved.
 */

package com.sap.cloud.sdk.s4hana.datamodel.bapi.structures;

import java.time.LocalDate;

import javax.annotation.Nullable;

import com.sap.cloud.sdk.result.ElementName;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.AssetAccountingAcquisMonth;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.AssetScrapValue;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.CurrencyKey;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.DepreciationKey;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ExpiredUsefulLifeInPeriodsAtStartOfFiscalYear;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ExpiredUsefulLifeInPeriodsDuringFyFromSdepStartDat;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ExpiredUsefulLifeInYearsAtStartOfTheFiscalYear;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.GroupAsset;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.IndexSeriesForReplacementValues;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.IndexSeriesForReplacementValuesByAge;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.IsoCodeCurrency;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.NumberOfUnitsDepreciatedInUnitOfProdDepreciation;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.OriginalUsefulLifeInPeriods;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.OriginalUsefulLifeInYears;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.PlannedUsefulLifeInPeriods;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.PlannedUsefulLifeInYears;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.RealDepreciationArea;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ScrapValueAsPercentageOfApc;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.SubnumberOfGroupAsset;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.VariableDepreciationPortion;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.YrsExpiredUpToFiscYrStartFromStartOfSpecDep;
import com.sap.cloud.sdk.s4hana.serialization.ErpBoolean;
import com.sap.cloud.sdk.s4hana.types.Year;

import lombok.Builder;
import lombok.Data;

/**
 * Depreciation areas (all logical field groups)
 * 
 *  Structure: BAPI1022_DEP_AREAS
 * 
* */ @Builder @Data public class FixedAssetDepreciationArea { /** * Field name: ACQ_PRD *
     *  Type element: BF_VMNTH
     *  Domain name: POPER
     *  Internal type: NUMC
     *  Description: Asset Accounting: Acquis. month (in depreciation area)
     *  Max length: 3
     * 
* */ @ElementName("ACQ_PRD") @Nullable private AssetAccountingAcquisMonth acqPrd; /** * Field name: ACQ_YR *
     *  Type element: BF_VYEAR
     *  Domain name: GJAHR
     *  Internal type: NUMC
     *  Description: Acquisition year of the asset (manually changeable)
     *  Max length: 4
     * 
* */ @ElementName("ACQ_YR") @Nullable private Year acqYr; /** * Field name: AGE_INDEX *
     *  Type element: BF_ALIND
     *  Domain name: BF_WBIND
     *  Internal type: CHAR
     *  Description: Index series for replacement values by age
     *  Max length: 5
     * 
* */ @ElementName("AGE_INDEX") @Nullable private IndexSeriesForReplacementValuesByAge ageIndex; /** * Field name: AREA *
     *  Type element: BF_AFABE_D
     *  Domain name: BF_AFABE
     *  Internal type: NUMC
     *  Description: Real depreciation area
     *  Max length: 2
     * 
* */ @ElementName("AREA") @Nullable private RealDepreciationArea area; /** * Field name: CHANGE_YR *
     *  Type element: BF_UMJAR
     *  Domain name: GJAHR
     *  Internal type: NUMC
     *  Description: Depreciation key for the changeover year
     *  Max length: 4
     * 
* */ @ElementName("CHANGE_YR") @Nullable private Year changeYr; /** * Field name: CURRENCY *
     *  Type element: WAERS
     *  Domain name: WAERS
     *  Internal type: CUKY
     *  Description: Currency Key
     *  Max length: 5
     * 
* */ @ElementName("CURRENCY") @Nullable private CurrencyKey currency; /** * Field name: CURRENCY_ISO *
     *  Type element: WAERS_ISO
     *  Domain name: ISOCD
     *  Internal type: CHAR
     *  Description: ISO Code Currency
     *  Max length: 3
     * 
* */ @ElementName("CURRENCY_ISO") @Nullable private IsoCodeCurrency currencyIso; /** * Field name: DEACTIVATE *
     *  Type element: BF_XAFBE
     *  Domain name: BF_XFELD
     *  Internal type: CHAR
     *  Description: Indicator: Depreciation area is deactivated
     *  Max length: 1
     * 
* */ @ElementName("DEACTIVATE") @Nullable private ErpBoolean deactivate; /** * Field name: DEP_KEY *
     *  Type element: BF_AFASL
     *  Domain name: BF_AFASL
     *  Internal type: CHAR
     *  Description: Depreciation key
     *  Max length: 4
     * 
* */ @ElementName("DEP_KEY") @Nullable private DepreciationKey depKey; /** * Field name: DEP_UNITS *
     *  Type element: RSTCK
     *  Domain name: PACK8
     *  Internal type: DEC
     *  Description: Number of units depreciated in unit-of-prod. depreciation
     *  Max length: 8
     * 
* */ @ElementName("DEP_UNITS") @Nullable private NumberOfUnitsDepreciatedInUnitOfProdDepreciation depUnits; /** * Field name: DESCRIPT *
     *  Type element: AFBKTX
     *  Domain name: TEXT12
     *  Internal type: CHAR
     *  Description: Short name for depreciation area
     *  Max length: 12
     * 
* */ @ElementName("DESCRIPT") @Nullable private String descript; /** * Field name: EXP_ULIFE_PRDS *
     *  Type element: BF_NDABP
     *  Domain name: BF_PERAF
     *  Internal type: NUMC
     *  Description: Expired useful life in periods at start of fiscal year
     *  Max length: 3
     * 
* */ @ElementName("EXP_ULIFE_PRDS") @Nullable private ExpiredUsefulLifeInPeriodsAtStartOfFiscalYear expUlifePrds; /** * Field name: EXP_ULIFE_SDEP_PRDS *
     *  Type element: BF_ANDSP
     *  Domain name: BF_PERAF
     *  Internal type: NUMC
     *  Description: Expired useful life in periods during FY from SDep start dat
     *  Max length: 3
     * 
* */ @ElementName("EXP_ULIFE_SDEP_PRDS") @Nullable private ExpiredUsefulLifeInPeriodsDuringFyFromSdepStartDat expUlifeSdepPrds; /** * Field name: EXP_ULIFE_SDEP_YRS *
     *  Type element: BF_ANDSJ
     *  Domain name: BF_JARAF
     *  Internal type: NUMC
     *  Description: Yrs Expired up to Fisc.Yr Start from Start of Spec.Dep.
     *  Max length: 3
     * 
* */ @ElementName("EXP_ULIFE_SDEP_YRS") @Nullable private YrsExpiredUpToFiscYrStartFromStartOfSpecDep expUlifeSdepYrs; /** * Field name: EXP_ULIFE_YRS *
     *  Type element: BF_NDABJ
     *  Domain name: BF_JARAF
     *  Internal type: NUMC
     *  Description: Expired useful life in years at start of the fiscal year
     *  Max length: 3
     * 
* */ @ElementName("EXP_ULIFE_YRS") @Nullable private ExpiredUsefulLifeInYearsAtStartOfTheFiscalYear expUlifeYrs; /** * Field name: FROM_DATE *
     *  Type element: BF_ADATU
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Date for beginning of validity
     *  Max length: 8
     * 
* */ @ElementName("FROM_DATE") @Nullable private LocalDate fromDate; /** * Field name: GRP_ASSET *
     *  Type element: BF_ANLGR
     *  Domain name: BF_ANLN1
     *  Internal type: CHAR
     *  Description: Group asset
     *  Max length: 12
     * 
* */ @ElementName("GRP_ASSET") @Nullable private GroupAsset grpAsset; /** * Field name: GRP_ASSET_SUBNO *
     *  Type element: BF_ANLGR2
     *  Domain name: BF_ANLN2
     *  Internal type: CHAR
     *  Description: Subnumber of Group Asset
     *  Max length: 4
     * 
* */ @ElementName("GRP_ASSET_SUBNO") @Nullable private SubnumberOfGroupAsset grpAssetSubno; /** * Field name: INDEX *
     *  Type element: BF_WBIND
     *  Domain name: BF_WBIND
     *  Internal type: CHAR
     *  Description: Index series for replacement values
     *  Max length: 5
     * 
* */ @ElementName("INDEX") @Nullable private IndexSeriesForReplacementValues index; /** * Field name: INTEREST_START_DATE *
     *  Type element: BF_ZINBG
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Start date for interest calculation
     *  Max length: 8
     * 
* */ @ElementName("INTEREST_START_DATE") @Nullable private LocalDate interestStartDate; /** * Field name: NEG_VALUES *
     *  Type element: BF_XNEGA
     *  Domain name: BF_XFELD
     *  Internal type: CHAR
     *  Description: Indicator: Negative values allowed
     *  Max length: 1
     * 
* */ @ElementName("NEG_VALUES") @Nullable private ErpBoolean negValues; /** * Field name: ODEP_START_DATE *
     *  Type element: BF_AFABG
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Depreciation Calculation Start Date
     *  Max length: 8
     * 
* */ @ElementName("ODEP_START_DATE") @Nullable private LocalDate odepStartDate; /** * Field name: ORIG_ULIFE_PRDS *
     *  Type element: BF_NDURP
     *  Domain name: BF_PERAF
     *  Internal type: NUMC
     *  Description: Original useful life in periods
     *  Max length: 3
     * 
* */ @ElementName("ORIG_ULIFE_PRDS") @Nullable private OriginalUsefulLifeInPeriods origUlifePrds; /** * Field name: ORIG_ULIFE_YRS *
     *  Type element: BF_NDURJ
     *  Domain name: BF_JARAF
     *  Internal type: NUMC
     *  Description: Original useful life in years
     *  Max length: 3
     * 
* */ @ElementName("ORIG_ULIFE_YRS") @Nullable private OriginalUsefulLifeInYears origUlifeYrs; /** * Field name: READINESS *
     *  Type element: BF_INBDA
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Asset Accounting:  Date of operating readiness
     *  Max length: 8
     * 
* */ @ElementName("READINESS") @Nullable private LocalDate readiness; /** * Field name: SCRAPVALUE *
     *  Type element: BF_SCHRW
     *  Domain name: BAPICURR
     *  Internal type: DEC
     *  Description: Asset scrap value
     *  Max length: 12
     * 
* */ @ElementName("SCRAPVALUE") @Nullable private AssetScrapValue scrapvalue; /** * Field name: SCRAPVALUE_PRCTG *
     *  Type element: SCHRW_PROZ
     *  Domain name: 
     *  Internal type: DEC
     *  Description: Scrap Value as Percentage of APC
     *  Max length: 8
     * 
* */ @ElementName("SCRAPVALUE_PRCTG") @Nullable private ScrapValueAsPercentageOfApc scrapvaluePrctg; /** * Field name: SDEP_START_DATE *
     *  Type element: BF_SAFBG
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Start date for special depreciation
     *  Max length: 8
     * 
* */ @ElementName("SDEP_START_DATE") @Nullable private LocalDate sdepStartDate; /** * Field name: TO_DATE *
     *  Type element: BF_BDATU
     *  Domain name: DATUM
     *  Internal type: DATS
     *  Description: Date Validity Ends
     *  Max length: 8
     * 
* */ @ElementName("TO_DATE") @Nullable private LocalDate toDate; /** * Field name: ULIFE_PRDS *
     *  Type element: BF_NDPER
     *  Domain name: BF_PERAF
     *  Internal type: NUMC
     *  Description: Planned useful life in periods
     *  Max length: 3
     * 
* */ @ElementName("ULIFE_PRDS") @Nullable private PlannedUsefulLifeInPeriods ulifePrds; /** * Field name: ULIFE_YRS *
     *  Type element: BF_NDJAR
     *  Domain name: BF_JARAF
     *  Internal type: NUMC
     *  Description: Planned useful life in years
     *  Max length: 3
     * 
* */ @ElementName("ULIFE_YRS") @Nullable private PlannedUsefulLifeInYears ulifeYrs; /** * Field name: VAR_DEP_PORTION *
     *  Type element: BF_APROP
     *  Domain name: DEC3_4
     *  Internal type: DEC
     *  Description: Variable depreciation portion
     *  Max length: 4
     * 
* */ @ElementName("VAR_DEP_PORTION") @Nullable private VariableDepreciationPortion varDepPortion; public void validate() throws IllegalArgumentException { if ((descript!= null)&&(descript.length()> 12)) { throw new IllegalArgumentException("Bapi method parameter \"descript\" contains an invalid structure. Structure attribute \"DESCRIPT\" / Function parameter \"descript\" must have at most 12 characters. The given value is too long."); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy