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

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

There is a newer version: 2.28.0
Show newest version
/*
 * Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
 */

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

import javax.annotation.Nullable;

import com.sap.cloud.sdk.result.ElementName;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.AccountingDocumentLineItemNumber;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.BudgetPeriod;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.CommitmentItem;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.CommitmentItem24;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.FinancialManagementArea;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.FunctionalArea;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.FunctionalArea16;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.Fund;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.FundsCenter;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.Grant;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.UuidInXForm;

import lombok.Builder;
import lombok.Data;

/**
 * Add. Contract Accounts Rec. and Payable Document Line Item
 * 
 *  Structure: BAPIACCAIT
 * 
* */ @Builder @Data public class AddContractAccountsRecAndPayableDocumentLineItem { /** * Field name: AGREEMENT_GUID *
     *  Type element: SYSUUID_X
     *  Domain name: SYSUUID
     *  Internal type: RAW
     *  Description: UUID in X form (binary)
     *  Max length: 16
     * 
* */ @ElementName("AGREEMENT_GUID") @Nullable private UuidInXForm agreementGuid; /** * Field name: BUDGET_PERIOD *
     *  Type element: FM_BUDGET_PERIOD
     *  Domain name: FM_BUDGET_PERIOD
     *  Internal type: CHAR
     *  Description: Budget Period
     *  Max length: 10
     * 
* */ @ElementName("BUDGET_PERIOD") @Nullable private BudgetPeriod budgetPeriod; /** * Field name: BUS_SCENARIO *
     *  Type element: ACPI_IAOM_BS_ID
     *  Domain name: CHAR16
     *  Internal type: CHAR
     *  Description: Business Scenario in Controlling for Logistical Objects
     *  Max length: 16
     * 
* */ @ElementName("BUS_SCENARIO") @Nullable private String busScenario; /** * Field name: CMMT_ITEM *
     *  Type element: FIPOS
     *  Domain name: FIPOS
     *  Internal type: CHAR
     *  Description: Commitment Item
     *  Max length: 14
     * 
* */ @ElementName("CMMT_ITEM") @Nullable private CommitmentItem cmmtItem; /** * Field name: CMMT_ITEM_LONG *
     *  Type element: FM_FIPEX
     *  Domain name: FM_FIPEX
     *  Internal type: CHAR
     *  Description: Commitment item
     *  Max length: 24
     * 
* */ @ElementName("CMMT_ITEM_LONG") @Nullable private CommitmentItem24 cmmtItemLong; /** * Field name: CONT_ACCT *
     *  Type element: ACPI_CONT_ACCT
     *  Domain name: CHAR12
     *  Internal type: CHAR
     *  Description: FI-CA: Contract Account Number
     *  Max length: 12
     * 
* */ @ElementName("CONT_ACCT") @Nullable private String contAcct; /** * Field name: EXT_OBJECT_ID *
     *  Type element: ACPI_IAOM_EO_ID
     *  Domain name: CHAR34
     *  Internal type: CHAR
     *  Description: Technical Key of External Object
     *  Max length: 34
     * 
* */ @ElementName("EXT_OBJECT_ID") @Nullable private String extObjectId; /** * Field name: FM_AREA *
     *  Type element: FIKRS
     *  Domain name: FIKRS
     *  Internal type: CHAR
     *  Description: Financial Management Area
     *  Max length: 4
     * 
* */ @ElementName("FM_AREA") @Nullable private FinancialManagementArea fmArea; /** * Field name: FUNC_AREA *
     *  Type element: FKBER_SHORT
     *  Domain name: FKBER_SHORT
     *  Internal type: CHAR
     *  Description: Functional Area
     *  Max length: 4
     * 
* */ @ElementName("FUNC_AREA") @Nullable private FunctionalArea funcArea; /** * Field name: FUNC_AREA_LONG *
     *  Type element: FKBER
     *  Domain name: FKBER
     *  Internal type: CHAR
     *  Description: Functional Area
     *  Max length: 16
     * 
* */ @ElementName("FUNC_AREA_LONG") @Nullable private FunctionalArea16 funcAreaLong; /** * Field name: FUND *
     *  Type element: BP_GEBER
     *  Domain name: BP_GEBER
     *  Internal type: CHAR
     *  Description: Fund
     *  Max length: 10
     * 
* */ @ElementName("FUND") @Nullable private Fund fund; /** * Field name: FUNDS_CTR *
     *  Type element: FISTL
     *  Domain name: FISTL
     *  Internal type: CHAR
     *  Description: Funds Center
     *  Max length: 16
     * 
* */ @ElementName("FUNDS_CTR") @Nullable private FundsCenter fundsCtr; /** * Field name: GRANT_NBR *
     *  Type element: GM_GRANT_NBR
     *  Domain name: GM_GRANT_NBR
     *  Internal type: CHAR
     *  Description: Grant
     *  Max length: 20
     * 
* */ @ElementName("GRANT_NBR") @Nullable private Grant grantNbr; /** * Field name: ITEMNO_ACC *
     *  Type element: POSNR_ACC
     *  Domain name: POSNR_ACC
     *  Internal type: NUMC
     *  Description: Accounting Document Line Item Number
     *  Max length: 10
     * 
* */ @ElementName("ITEMNO_ACC") @Nullable private AccountingDocumentLineItemNumber itemnoAcc; /** * Field name: MAIN_TRANS *
     *  Type element: ACPI_MAIN_TRANS
     *  Domain name: CHAR4
     *  Internal type: CHAR
     *  Description: FI-CA: Main Transaction for Line Item
     *  Max length: 4
     * 
* */ @ElementName("MAIN_TRANS") @Nullable private String mainTrans; /** * Field name: REFERENCE_NO *
     *  Type element: ACPI_CA_DOC_REF
     *  Domain name: CHAR16
     *  Internal type: CHAR
     *  Description: FI-CA: Reference to FI-CA Document
     *  Max length: 16
     * 
* */ @ElementName("REFERENCE_NO") @Nullable private String referenceNo; /** * Field name: SUB_TRANS *
     *  Type element: ACPI_SUB_TRANS
     *  Domain name: CHAR4
     *  Internal type: CHAR
     *  Description: FI-CA: Subtransaction for Line Item
     *  Max length: 4
     * 
* */ @ElementName("SUB_TRANS") @Nullable private String subTrans; /** * Field name: VTREF *
     *  Type element: ACPI_CONT_REF
     *  Domain name: CHAR20
     *  Internal type: CHAR
     *  Description: FI-CA: Reference Specifications from Contract
     *  Max length: 20
     * 
* */ @ElementName("VTREF") @Nullable private String vtref; /** * Field name: VTREF_GUID *
     *  Type element: SYSUUID_X
     *  Domain name: SYSUUID
     *  Internal type: RAW
     *  Description: UUID in X form (binary)
     *  Max length: 16
     * 
* */ @ElementName("VTREF_GUID") @Nullable private UuidInXForm vtrefGuid; public void validate() throws IllegalArgumentException { if ((busScenario!= null)&&(busScenario.length()> 16)) { throw new IllegalArgumentException("Bapi method parameter \"busScenario\" contains an invalid structure. Structure attribute \"BUS_SCENARIO\" / Function parameter \"busScenario\" must have at most 16 characters. The given value is too long."); } if ((contAcct!= null)&&(contAcct.length()> 12)) { throw new IllegalArgumentException("Bapi method parameter \"contAcct\" contains an invalid structure. Structure attribute \"CONT_ACCT\" / Function parameter \"contAcct\" must have at most 12 characters. The given value is too long."); } if ((extObjectId!= null)&&(extObjectId.length()> 34)) { throw new IllegalArgumentException("Bapi method parameter \"extObjectId\" contains an invalid structure. Structure attribute \"EXT_OBJECT_ID\" / Function parameter \"extObjectId\" must have at most 34 characters. The given value is too long."); } if ((mainTrans!= null)&&(mainTrans.length()> 4)) { throw new IllegalArgumentException("Bapi method parameter \"mainTrans\" contains an invalid structure. Structure attribute \"MAIN_TRANS\" / Function parameter \"mainTrans\" must have at most 4 characters. The given value is too long."); } if ((referenceNo!= null)&&(referenceNo.length()> 16)) { throw new IllegalArgumentException("Bapi method parameter \"referenceNo\" contains an invalid structure. Structure attribute \"REFERENCE_NO\" / Function parameter \"referenceNo\" must have at most 16 characters. The given value is too long."); } if ((subTrans!= null)&&(subTrans.length()> 4)) { throw new IllegalArgumentException("Bapi method parameter \"subTrans\" contains an invalid structure. Structure attribute \"SUB_TRANS\" / Function parameter \"subTrans\" must have at most 4 characters. The given value is too long."); } if ((vtref!= null)&&(vtref.length()> 20)) { throw new IllegalArgumentException("Bapi method parameter \"vtref\" contains an invalid structure. Structure attribute \"VTREF\" / Function parameter \"vtref\" must have at most 20 characters. The given value is too long."); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy