compiereerpapplicationdictionary培训ghg.docx
AuthorPeterDate4/20/2004 9:22 PMVersion0.1Application Dictionaryl How is a window created?FieldsTabsTablesColumnsWindow A Window normally contains several Tabs, and A Tab contains several Fields.And A Tab is based on a Table, so A Field in a tab is just a Column in a Table.SO the process to generate a window is to:Create a table into Oracle (Or use an existing Table) Create a table in Application Dictionary (Or use an existing Table)Create Columns in Application Dictionary for this TableCreate A window in Application DictionaryCreate Tabs for this window using a table in Application Dictionary Create fields for the TabCreate a new Menu item and add a window menu into the menu treeLogin again, IS THAT WHAT YOU WANT?ü What is Table in Application Dictionary?A table in Application Dictionary can be physical table or a view in oracle.DB Table Name: the name of physical table or view in Oracle.View: click if this is a view in Oracle.Data Access Level: System Only means its data can only be accessed by System ClientClient/Organization means the data can be accessed by Client(*) or organization (GardenWorld, HQ)Organization: the data can only be accessed by organization (GardenWorld, HQ)System/Client: the data can be accessed by System Client and Client (GardenWorld, *)Window: means which window uses this table.PO Window: Record deleteable: means the user can delete records in the tableHigh volume: this table may contains huge records, so display the search dialog firstCreate Columns from DB: read the tables fields from oracle and generate relative columnsDB Column Name: the column name in the real table or view in OracleSystem Element: this is used in displaying like reportReference: the columns Data Type, also it decide what the field will look like in the windowValidation: see Validation RuleReference Key: see ReferenceDefault Logic: set a default value for this column, u can use constant value like 1, or the value in Context like xAD_Client_IDx, or just or sql query like xSQL=select.Key Column: something like primary keyParent link Column: used in Master/Detail tabs, indicated with which column the detail tab link the Master TabMandatory: the column cannot be null, otherwise, the system will give an error messageUpdateable: the value of column cannot be updated, u save the value and then the field become readonlyRead Only Logic: In which case, the column is readonly, it should be Boolean value like 1=2private static String ProductCode (Properties ctx, int WindowNo,MTab mTab, MField mField, Object value, Object oldValue) Integer M_Product_ID = (Integer)value;if(M_Product_ID != null)mTab.setValue("M_Product_ID2" , M_Product_ID); return ""/ProductCodeCallout: callout is a small piece of java cold, called when the user initialize the window or some value is edited, for example: therere 3 fields in window, a price, a quantity, and an amount, whenever the user change the value of price, or Quantity, the amount should be changed automatically. Then u add a callout like that: Selection Column: means this column is a search key, when u push the search:then it append after the name and descriptionAttention: The 3 column will become search key automatically, Value, Name, DescriptionOK, then the table is Finished!But before that, u must check these:Attention:1, a table must contain such columns: AD_Client_ID, AD_Org_ID, IsActive, Created, CreatedBy, Updated, UpdatedBy2, all the column name is case Sensitiveü Then goes to The WINDOWThe Window is the real thing u should define to showWindow Type: Maintain means in this window u can create record, delete record, update record Query Only means in this window u can only view the data, no creating, no deleting, EtcTransaction: transaction is generally used in some business transactions like sales order or shipments, often it has a column called Processed, when processed=Y then this record cannot be edited And the transaction window only show the data which processed=N and created today, and after u push the history button in tool bar , then the other data can be displayedTable: which table is the tab used, (a tab must depend on a table defined in table)Sequence: the display sequence, from up to bottomTab level: means the relationship in master/detail tabsSingle row layout: the data will displayed as single or multi rows by defaultHas Tree: the tab will showed with a tree, like that: Attention: It does not mean a tree will displayed automatically if u click this, only some table has tree (M_Product, AD_Menu, C_BPartner, and more), which is hardcodedOrder Tab: This is an example of Order Tab:Process: u can define a process for the tab, it is normally used for reportColumn: the tables column, a field must depend on a columnField Group: this is a field group:Display Logic: in which case the field is displayed, u can use constant value like 1, or the value in Context like xAD_Client_IDx, or just or sql query like xSQL=select.Heading Only: show the fields name onlyField Only : show the fields value onlyEverything seems OK, now add the window into the Menu:Login again, to see what happened!