ERP/2.50/Developers Guide/Reference/Entity Model/ADTable
ADTable
In Table table are stored all the tables used in the application. This data should be the same as the defined physically in the DB.
To the database table (AD_Table) 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* | AD_Table_ID | Mandatory Max Length: 32 | java.lang.String | The Table indicates the table in which a field or fields reside. |
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. |
name | Name | Mandatory Max Length: 60 | java.lang.String | A more descriptive identifier (that does need to be unique) of a record/document that is used as a default search option along with the search key (that is unique and mostly shorter). It is up to 60 characters in length. |
description | Description | Max Length: 255 | java.lang.String | A description is limited to 255 characters. |
helpComment | Help | Max Length: 2000 | java.lang.String | The Help field contains a hint, comment or help about the use of this item. |
dBTableName# | TableName | Mandatory Max Length: 40 | java.lang.String | The DB Table Name indicates the name of the table in database. |
javaClassName | Classname | Mandatory Max Length: 60 | java.lang.String | The classname is used when generating a representation of the table in java (the entity or business object). The classname is the simplename of the class (so without the package name). Often the AD_Table.name can be used here. The combination of classname and package needs to be unique. |
view | IsView | Mandatory | java.lang.Boolean | This is a view rather than a table. A view is always treated as read only in the system. |
dataAccessLevel | AccessLevel | Mandatory Max Length: 60 | java.lang.String | Indicates what type of data (in terms of AD_CLIENT and AD_ORG data columns) can be entered or viewed. We can classify data in 4 major categories:
- System (AD_CLIENT_ID=0, AD_ORG_ID=0) - system data (such as metadata for window, tab and field definition) - Organization (AD_CLIENT<>0, AD_ORG_ID<>0) - data particular to an organization (such as sales orders) - Client/Organization (AD_CLIENT<>0, AD_ORG_ID=anything) - data particular to an organization or shared among all organizations within one client - Client (AD_CLIENT<>0, AD_ORG_ID=0) - data that is specific to a client but can be used by all organizations within that client or All (AD_CLIENT=anything, AD_ORG_ID=anything) |
window | AD_Window_ID | ADWindow | The Window field identifies a unique Window in the system. | |
securityEnabled | IsSecurityEnabled | java.lang.Boolean | The Security Enabled checkbox indicates that user access to the data in this table can be restricted using Roles. | |
deletableRecords | IsDeleteable | Mandatory | java.lang.Boolean | The Deleteable Records checkbox indicates if a record can be deleted from the database. If records cannot be deleted, you can only deselect the Active flag |
highVolume | IsHighVolume | Mandatory | java.lang.Boolean | The High Volume Checkbox indicates if a search screen will display as opposed to a pick list for selecting records from this table. |
importTable | ImportTable | java.lang.Boolean | Import Table Columns from Database, this process will create in the application dictionary those columns defined in the table (in DB) but non-existing in the column table (of the application dictionary). | |
maintainChangeLog | IsChangeLog | java.lang.Boolean | If selected, a log of all changes is maintained. | |
pOWindow | PO_Window_ID | ADWindow | Window for Purchase Order (AP) Zooms | |
defaultAccount | IsDefaultAcct | java.lang.Boolean | Is default account | |
sQLRecordIdentifier | SQL_Record_Identifier | Max Length: 4000 | java.lang.String | SQL_Record_Identifier |
developmentStatus | Developmentstatus | Max Length: 60 | java.lang.String | Development Status defines the status of a table or a column. Ready means that this object is in use, Not Implemented Yet indicates that currently it is not in use but it is planned to be implemented and Deprecated are the objects that are going to be removed from the application in future versions. |
dataPackage | AD_Package_ID | Mandatory | DataPackage | An AD_Table record has a mandatory relation to a package (the AD_Package). Choose a sensible package fitting to the functional area to which the table applies (so not the Core package). If no such package exist then create a new one. The relation to the module is maintained through the AD_Package, so an AD_Table has an AD_Package which belongs to a module. When developing for a module then first a package needs to be defined in AD_Package, linked to the module. Then the records in AD_Table (for that module) can be linked to that package. |
treeType | Treetype | Max Length: 60 | java.lang.String | The Tree Type / Area field determines the type of tree this is. For example, you may define one tree for your Products and another tree for your Business Partners. |
acctdateColumn | Acctdate_Column_ID | ADColumn | Date reference column where is stored the accounting date | |
acctclassname | Acctclassname | Max Length: 1000 | java.lang.String | Java class name where the posting of table is developed |
isFullyAudited | IsFullyAudited | Mandatory | java.lang.Boolean | If audit trail is maintained for a table, each modification performed to any record in this table will be tracked.
Do not forget to generate Audit infrastructure after selecting or deselecting a table to be audited. |
aDRecordAccessList | List of ADRecordAccess | |||
aDColumnList | List of ADColumn | |||
aDTableAccessList | List of ADTableAccess |
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.ad.datamodel; 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.RecordAccess; import org.openbravo.model.ad.access.TableAccess; import org.openbravo.model.ad.access.User; import org.openbravo.model.ad.module.DataPackage; import org.openbravo.model.ad.system.Client; import org.openbravo.model.ad.ui.Window; import org.openbravo.model.common.enterprise.Organization; import java.lang.Boolean; import java.lang.String; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * Entity class for entity ADTable (stored in table AD_Table). * * NOTE: This class should not be instantiated directly. To instantiate this * class the {@link org.openbravo.base.provider.OBProvider} should be used. */ public class Table extends BaseOBObject implements Traceable, ClientEnabled, OrganizationEnabled, ActiveEnabled { private static final long serialVersionUID = 1L; public static final String TABLE_NAME = "AD_Table"; public static final String ADTable = "ADTable"; 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_NAME = "name"; public static final String PROPERTY_DESCRIPTION = "description"; public static final String PROPERTY_HELPCOMMENT = "helpComment"; public static final String PROPERTY_DBTABLENAME = "dBTableName"; public static final String PROPERTY_JAVACLASSNAME = "javaClassName"; public static final String PROPERTY_VIEW = "view"; public static final String PROPERTY_DATAACCESSLEVEL = "dataAccessLevel"; public static final String PROPERTY_WINDOW = "window"; public static final String PROPERTY_SECURITYENABLED = "securityEnabled"; public static final String PROPERTY_DELETABLERECORDS = "deletableRecords"; public static final String PROPERTY_HIGHVOLUME = "highVolume"; public static final String PROPERTY_IMPORTTABLE = "importTable"; public static final String PROPERTY_MAINTAINCHANGELOG = "maintainChangeLog"; public static final String PROPERTY_POWINDOW = "pOWindow"; public static final String PROPERTY_DEFAULTACCOUNT = "defaultAccount"; public static final String PROPERTY_SQLRECORDIDENTIFIER = "sQLRecordIdentifier"; public static final String PROPERTY_DEVELOPMENTSTATUS = "developmentStatus"; public static final String PROPERTY_DATAPACKAGE = "dataPackage"; public static final String PROPERTY_TREETYPE = "treeType"; public static final String PROPERTY_ACCTDATECOLUMN = "acctdateColumn"; public static final String PROPERTY_ACCTCLASSNAME = "acctclassname"; public static final String PROPERTY_ISFULLYAUDITED = "isFullyAudited"; public static final String PROPERTY_ADRECORDACCESSLIST = "aDRecordAccessList"; public static final String PROPERTY_ADCOLUMNLIST = "aDColumnList"; public static final String PROPERTY_ADTABLEACCESSLIST = "aDTableAccessList"; public Table() { setDefaultValue(PROPERTY_ACTIVE, true); setDefaultValue(PROPERTY_VIEW, false); setDefaultValue(PROPERTY_DATAACCESSLEVEL, "4"); setDefaultValue(PROPERTY_SECURITYENABLED, false); setDefaultValue(PROPERTY_DELETABLERECORDS, true); setDefaultValue(PROPERTY_HIGHVOLUME, false); setDefaultValue(PROPERTY_IMPORTTABLE, false); setDefaultValue(PROPERTY_MAINTAINCHANGELOG, false); setDefaultValue(PROPERTY_DEFAULTACCOUNT, false); setDefaultValue(PROPERTY_DEVELOPMENTSTATUS, "RE"); setDefaultValue(PROPERTY_ISFULLYAUDITED, false); setDefaultValue(PROPERTY_ADRECORDACCESSLIST, new ArrayList<Object>()); setDefaultValue(PROPERTY_ADCOLUMNLIST, new ArrayList<Object>()); setDefaultValue(PROPERTY_ADTABLEACCESSLIST, new ArrayList<Object>()); } @Override public String getEntityName() { return ADTable; } 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 String getName() { return (String) get(PROPERTY_NAME); } public void setName(String name) { set(PROPERTY_NAME, name); } public String getDescription() { return (String) get(PROPERTY_DESCRIPTION); } public void setDescription(String description) { set(PROPERTY_DESCRIPTION, description); } public String getHelpComment() { return (String) get(PROPERTY_HELPCOMMENT); } public void setHelpComment(String helpComment) { set(PROPERTY_HELPCOMMENT, helpComment); } public String getDBTableName() { return (String) get(PROPERTY_DBTABLENAME); } public void setDBTableName(String dBTableName) { set(PROPERTY_DBTABLENAME, dBTableName); } public String getJavaClassName() { return (String) get(PROPERTY_JAVACLASSNAME); } public void setJavaClassName(String javaClassName) { set(PROPERTY_JAVACLASSNAME, javaClassName); } public Boolean isView() { return (Boolean) get(PROPERTY_VIEW); } public void setView(Boolean view) { set(PROPERTY_VIEW, view); } public String getDataAccessLevel() { return (String) get(PROPERTY_DATAACCESSLEVEL); } public void setDataAccessLevel(String dataAccessLevel) { set(PROPERTY_DATAACCESSLEVEL, dataAccessLevel); } public Window getWindow() { return (Window) get(PROPERTY_WINDOW); } public void setWindow(Window window) { set(PROPERTY_WINDOW, window); } public Boolean isSecurityEnabled() { return (Boolean) get(PROPERTY_SECURITYENABLED); } public void setSecurityEnabled(Boolean securityEnabled) { set(PROPERTY_SECURITYENABLED, securityEnabled); } public Boolean isDeletableRecords() { return (Boolean) get(PROPERTY_DELETABLERECORDS); } public void setDeletableRecords(Boolean deletableRecords) { set(PROPERTY_DELETABLERECORDS, deletableRecords); } public Boolean isHighVolume() { return (Boolean) get(PROPERTY_HIGHVOLUME); } public void setHighVolume(Boolean highVolume) { set(PROPERTY_HIGHVOLUME, highVolume); } public Boolean isImportTable() { return (Boolean) get(PROPERTY_IMPORTTABLE); } public void setImportTable(Boolean importTable) { set(PROPERTY_IMPORTTABLE, importTable); } public Boolean isMaintainChangeLog() { return (Boolean) get(PROPERTY_MAINTAINCHANGELOG); } public void setMaintainChangeLog(Boolean maintainChangeLog) { set(PROPERTY_MAINTAINCHANGELOG, maintainChangeLog); } public Window getPOWindow() { return (Window) get(PROPERTY_POWINDOW); } public void setPOWindow(Window pOWindow) { set(PROPERTY_POWINDOW, pOWindow); } public Boolean isDefaultAccount() { return (Boolean) get(PROPERTY_DEFAULTACCOUNT); } public void setDefaultAccount(Boolean defaultAccount) { set(PROPERTY_DEFAULTACCOUNT, defaultAccount); } public String getSQLRecordIdentifier() { return (String) get(PROPERTY_SQLRECORDIDENTIFIER); } public void setSQLRecordIdentifier(String sQLRecordIdentifier) { set(PROPERTY_SQLRECORDIDENTIFIER, sQLRecordIdentifier); } public String getDevelopmentStatus() { return (String) get(PROPERTY_DEVELOPMENTSTATUS); } public void setDevelopmentStatus(String developmentStatus) { set(PROPERTY_DEVELOPMENTSTATUS, developmentStatus); } public DataPackage getDataPackage() { return (DataPackage) get(PROPERTY_DATAPACKAGE); } public void setDataPackage(DataPackage dataPackage) { set(PROPERTY_DATAPACKAGE, dataPackage); } public String getTreeType() { return (String) get(PROPERTY_TREETYPE); } public void setTreeType(String treeType) { set(PROPERTY_TREETYPE, treeType); } public Column getAcctdateColumn() { return (Column) get(PROPERTY_ACCTDATECOLUMN); } public void setAcctdateColumn(Column acctdateColumn) { set(PROPERTY_ACCTDATECOLUMN, acctdateColumn); } public String getAcctclassname() { return (String) get(PROPERTY_ACCTCLASSNAME); } public void setAcctclassname(String acctclassname) { set(PROPERTY_ACCTCLASSNAME, acctclassname); } public Boolean isFullyAudited() { return (Boolean) get(PROPERTY_ISFULLYAUDITED); } public void setFullyAudited(Boolean isFullyAudited) { set(PROPERTY_ISFULLYAUDITED, isFullyAudited); } @SuppressWarnings("unchecked") public List<RecordAccess> getADRecordAccessList() { return (List<RecordAccess>) get(PROPERTY_ADRECORDACCESSLIST); } public void setADRecordAccessList(List<RecordAccess> aDRecordAccessList) { set(PROPERTY_ADRECORDACCESSLIST, aDRecordAccessList); } @SuppressWarnings("unchecked") public List<Column> getADColumnList() { return (List<Column>) get(PROPERTY_ADCOLUMNLIST); } public void setADColumnList(List<Column> aDColumnList) { set(PROPERTY_ADCOLUMNLIST, aDColumnList); } @SuppressWarnings("unchecked") public List<TableAccess> getADTableAccessList() { return (List<TableAccess>) get(PROPERTY_ADTABLEACCESSLIST); } public void setADTableAccessList(List<TableAccess> aDTableAccessList) { set(PROPERTY_ADTABLEACCESSLIST, aDTableAccessList); } }