ERP/3.0/Developers Guide/Reference/Entity Model/RevenueRecognitionPlan
RevenueRecognitionPlan
The Revenue Recognition plan is generated then invoicing a product with revenue recognition. With Revenue Recognition, the amount is posted to the Unrecognized revenue account and over time, or based on Service Level, will be booked to Earned Revenue.
To the database table (C_RevenueRecognition_Plan) of this entity.
Properties
Note:
- Properties marked with a * are part of the Id of the Entity.
- Properties marked with a # are part of the Identifier of the Entity.
Property | Column | Constraints | Type | Description |
id* | C_RevenueRecognition_Plan_ID | Mandatory Max Length: 32 | java.lang.String | The Revenue Recognition Plan identifies a unique Revenue Recognition Plan. |
client | AD_Client_ID | Mandatory | ADClient | A Client is a company or a legal entity. You cannot share data between Clients. |
organization | AD_Org_ID | Mandatory | Organization | An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations. |
active | IsActive | Mandatory | java.lang.Boolean | There are two methods of making records unavailable in the system: One is to delete the record, the other is to de-activate the record. A de-activated record is not available for selection, but available for reporting. There are two reasons for de-activating and not deleting records:
(1) The system requires the record for auditing purposes. (2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are existing invoices for it. By de-activating the Business Partner you prevent it from being used in future transactions. |
creationDate | Created | Mandatory | java.util.Date | The Created field indicates the date that this record was created. |
createdBy | CreatedBy | Mandatory | ADUser | The Created By field indicates the user who created this record. |
updated | Updated | Mandatory | java.util.Date | The Updated field indicates the date that this record was updated. |
updatedBy | UpdatedBy | Mandatory | ADUser | The Updated By field indicates the user who updated this record. |
accountingSchema | C_AcctSchema_ID | Mandatory | FinancialMgmtAcctSchema | An Accounting Schema defines the rules used in accounting such as costing method, currency and calendar |
revenueRecognition# | C_RevenueRecognition_ID | Mandatory | RevenueRecognition | The Revenue Recognition indicates how revenue will be recognized for this product |
invoiceLine# | C_InvoiceLine_ID | Mandatory | InvoiceLine | The Invoice Line uniquely identifies a single line of an Invoice. |
unearnedRevenue | UnEarnedRevenue_Acct | Mandatory | FinancialMgmtAccountingCombination | The Unearned Revenue indicates the account used for recording invoices sent for products or services not yet delivered. It is used in revenue recognition |
productRevenue | P_Revenue_Acct | Mandatory | FinancialMgmtAccountingCombination | The Product Revenue Account indicates the account used for recording sales revenue for this product. |
currency | C_Currency_ID | Mandatory | Currency | Indicates the currency to be used when processing this document. |
totalAmount | TotalAmt | Mandatory | java.math.BigDecimal | The Total Amount indicates the total document amount. |
recognizedAmount | RecognizedAmt | Mandatory | java.math.BigDecimal | |
revenueRecognitionRunList | List of RevenueRecognitionRun | |||
serviceLevelList | List of ServiceLevel |
Java Entity Class
/* ************************************************************************* * The contents of this file are subject to the Openbravo Public License * Version 1.1 (the "License"), being the Mozilla Public License * Version 1.1 with a permitted attribution clause; you may not use this * file except in compliance with the License. You may obtain a copy of * the License at http://www.openbravo.com/legal/license.html * Software distributed under the License is distributed on an "AS IS" * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the * License for the specific language governing rights and limitations * under the License. * The Original Code is Openbravo ERP. * The Initial Developer of the Original Code is Openbravo SLU * All portions are Copyright (C) 2008-2010 Openbravo SLU * All Rights Reserved. * Contributor(s): ______________________________________. ************************************************************************ */ package org.openbravo.model.financialmgmt.accounting; import org.openbravo.base.structure.ActiveEnabled; import org.openbravo.base.structure.BaseOBObject; import org.openbravo.base.structure.ClientEnabled; import org.openbravo.base.structure.OrganizationEnabled; import org.openbravo.base.structure.Traceable; import org.openbravo.model.ad.access.User; import org.openbravo.model.ad.system.Client; import org.openbravo.model.common.currency.Currency; import org.openbravo.model.common.enterprise.Organization; import org.openbravo.model.common.invoice.InvoiceLine; import org.openbravo.model.common.plm.ServiceLevel; import org.openbravo.model.financialmgmt.accounting.coa.AccountingCombination; import org.openbravo.model.financialmgmt.accounting.coa.AcctSchema; import java.lang.Boolean; import java.lang.String; import java.math.BigDecimal; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * Entity class for entity RevenueRecognitionPlan (stored in table C_RevenueRecognition_Plan). * * NOTE: This class should not be instantiated directly. To instantiate this * class the {@link org.openbravo.base.provider.OBProvider} should be used. */ public class RevenueRecognitionPlan extends BaseOBObject implements Traceable, ClientEnabled, OrganizationEnabled, ActiveEnabled { private static final long serialVersionUID = 1L; public static final String TABLE_NAME = "C_RevenueRecognition_Plan"; public static final String RevenueRecognitionPlan = "RevenueRecognitionPlan"; public static final String PROPERTY_ID = "id"; public static final String PROPERTY_CLIENT = "client"; public static final String PROPERTY_ORGANIZATION = "organization"; public static final String PROPERTY_ACTIVE = "active"; public static final String PROPERTY_CREATIONDATE = "creationDate"; public static final String PROPERTY_CREATEDBY = "createdBy"; public static final String PROPERTY_UPDATED = "updated"; public static final String PROPERTY_UPDATEDBY = "updatedBy"; public static final String PROPERTY_ACCOUNTINGSCHEMA = "accountingSchema"; public static final String PROPERTY_REVENUERECOGNITION = "revenueRecognition"; public static final String PROPERTY_INVOICELINE = "invoiceLine"; public static final String PROPERTY_UNEARNEDREVENUE = "unearnedRevenue"; public static final String PROPERTY_PRODUCTREVENUE = "productRevenue"; public static final String PROPERTY_CURRENCY = "currency"; public static final String PROPERTY_TOTALAMOUNT = "totalAmount"; public static final String PROPERTY_RECOGNIZEDAMOUNT = "recognizedAmount"; public static final String PROPERTY_REVENUERECOGNITIONRUNLIST = "revenueRecognitionRunList"; public static final String PROPERTY_SERVICELEVELLIST = "serviceLevelList"; public RevenueRecognitionPlan() { setDefaultValue(PROPERTY_ACTIVE, true); setDefaultValue(PROPERTY_REVENUERECOGNITIONRUNLIST, new ArrayList<Object>()); setDefaultValue(PROPERTY_SERVICELEVELLIST, new ArrayList<Object>()); } @Override public String getEntityName() { return RevenueRecognitionPlan; } public String getId() { return (String) get(PROPERTY_ID); } public void setId(String id) { set(PROPERTY_ID, id); } public Client getClient() { return (Client) get(PROPERTY_CLIENT); } public void setClient(Client client) { set(PROPERTY_CLIENT, client); } public Organization getOrganization() { return (Organization) get(PROPERTY_ORGANIZATION); } public void setOrganization(Organization organization) { set(PROPERTY_ORGANIZATION, organization); } public Boolean isActive() { return (Boolean) get(PROPERTY_ACTIVE); } public void setActive(Boolean active) { set(PROPERTY_ACTIVE, active); } public Date getCreationDate() { return (Date) get(PROPERTY_CREATIONDATE); } public void setCreationDate(Date creationDate) { set(PROPERTY_CREATIONDATE, creationDate); } public User getCreatedBy() { return (User) get(PROPERTY_CREATEDBY); } public void setCreatedBy(User createdBy) { set(PROPERTY_CREATEDBY, createdBy); } public Date getUpdated() { return (Date) get(PROPERTY_UPDATED); } public void setUpdated(Date updated) { set(PROPERTY_UPDATED, updated); } public User getUpdatedBy() { return (User) get(PROPERTY_UPDATEDBY); } public void setUpdatedBy(User updatedBy) { set(PROPERTY_UPDATEDBY, updatedBy); } public AcctSchema getAccountingSchema() { return (AcctSchema) get(PROPERTY_ACCOUNTINGSCHEMA); } public void setAccountingSchema(AcctSchema accountingSchema) { set(PROPERTY_ACCOUNTINGSCHEMA, accountingSchema); } public RevenueRecognition getRevenueRecognition() { return (RevenueRecognition) get(PROPERTY_REVENUERECOGNITION); } public void setRevenueRecognition(RevenueRecognition revenueRecognition) { set(PROPERTY_REVENUERECOGNITION, revenueRecognition); } public InvoiceLine getInvoiceLine() { return (InvoiceLine) get(PROPERTY_INVOICELINE); } public void setInvoiceLine(InvoiceLine invoiceLine) { set(PROPERTY_INVOICELINE, invoiceLine); } public AccountingCombination getUnearnedRevenue() { return (AccountingCombination) get(PROPERTY_UNEARNEDREVENUE); } public void setUnearnedRevenue(AccountingCombination unearnedRevenue) { set(PROPERTY_UNEARNEDREVENUE, unearnedRevenue); } public AccountingCombination getProductRevenue() { return (AccountingCombination) get(PROPERTY_PRODUCTREVENUE); } public void setProductRevenue(AccountingCombination productRevenue) { set(PROPERTY_PRODUCTREVENUE, productRevenue); } public Currency getCurrency() { return (Currency) get(PROPERTY_CURRENCY); } public void setCurrency(Currency currency) { set(PROPERTY_CURRENCY, currency); } public BigDecimal getTotalAmount() { return (BigDecimal) get(PROPERTY_TOTALAMOUNT); } public void setTotalAmount(BigDecimal totalAmount) { set(PROPERTY_TOTALAMOUNT, totalAmount); } public BigDecimal getRecognizedAmount() { return (BigDecimal) get(PROPERTY_RECOGNIZEDAMOUNT); } public void setRecognizedAmount(BigDecimal recognizedAmount) { set(PROPERTY_RECOGNIZEDAMOUNT, recognizedAmount); } @SuppressWarnings("unchecked") public List<RevenueRecognitionRun> getRevenueRecognitionRunList() { return (List<RevenueRecognitionRun>) get(PROPERTY_REVENUERECOGNITIONRUNLIST); } public void setRevenueRecognitionRunList( List<RevenueRecognitionRun> revenueRecognitionRunList) { set(PROPERTY_REVENUERECOGNITIONRUNLIST, revenueRecognitionRunList); } @SuppressWarnings("unchecked") public List<ServiceLevel> getServiceLevelList() { return (List<ServiceLevel>) get(PROPERTY_SERVICELEVELLIST); } public void setServiceLevelList(List<ServiceLevel> serviceLevelList) { set(PROPERTY_SERVICELEVELLIST, serviceLevelList); } }