com.sap.cloud.sdk.s4hana.datamodel.bapi.structures.AddContractAccountsRecAndPayableDocumentLineItem Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bapi-api Show documentation
Show all versions of bapi-api Show documentation
Generated classes of the SAP S/4HANA Virtual Data Model (VDM) for BAPIs.
/*
* 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.");
}
}
}