diff --git a/migration/i1.0z/oracle/201310040834_IDEMPIERE-1265.sql b/migration/i1.0z/oracle/201310040834_IDEMPIERE-1265.sql new file mode 100644 index 0000000000..758491a3a2 --- /dev/null +++ b/migration/i1.0z/oracle/201310040834_IDEMPIERE-1265.sql @@ -0,0 +1,86 @@ +SET SQLBLANKLINES ON +SET DEFINE OFF + +-- Oct 4, 2013 2:14:15 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,Version,AD_Table_ID,AD_Column_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,IsToolbarButton,IsAlwaysUpdateable,AD_Client_ID,EntityType,IsEncrypted,AD_Element_ID,IsSecure) VALUES (0,'N',1,50010,210876,'N','N','N',0,'N',22,'N',19,'N','N','Y','db439ec4-6b77-4ff5-8776-8072546bc082','Y','AD_Chart_ID','Chart','Y',TO_DATE('2013-10-04 14:14:00','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_DATE('2013-10-04 14:14:00','YYYY-MM-DD HH24:MI:SS'),100,'N','N',0,'D','N',54268,'N') +; + +-- Oct 4, 2013 2:14:22 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +ALTER TABLE PA_DashboardContent ADD AD_Chart_ID NUMBER(10) DEFAULT NULL +; + +-- Oct 4, 2013 2:14:24 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +ALTER TABLE PA_DashboardContent ADD CONSTRAINT ADChart_PADashboardContent FOREIGN KEY (AD_Chart_ID) REFERENCES ad_chart(ad_chart_id) +; + +-- Oct 4, 2013 2:15:34 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +INSERT INTO AD_Field (SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry,AD_Client_ID,ColumnSpan,NumLines,IsDefaultFocus,IsAdvancedField) VALUES (0,'N',50010,0,'N','N',210876,220,'Y',202524,'N','D','Chart','f123637a-5269-42a3-ac5f-5dd3fac19b8a','Y','N',100,0,TO_DATE('2013-10-04 14:15:25','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2013-10-04 14:15:25','YYYY-MM-DD HH24:MI:SS'),'Y','Y',190,1,'N',0,2,1,'N','N') +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=110, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57344 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=120, IsDisplayed='Y', XPosition=1,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=51013 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=130,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200262 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=140,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200261 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=150,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200263 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=160, IsDisplayed='Y', XPosition=1,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202524 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=170, IsDisplayed='Y', XPosition=2,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=56504 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=180, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200268 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=190, IsDisplayed='Y', XPosition=2,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200260 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=200, IsDisplayed='Y', XPosition=4,Updated=TO_DATE('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202286 +; + +-- Oct 4, 2013 2:18:25 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET DisplayLogic='@AD_Process_ID@!0',Updated=TO_DATE('2013-10-04 14:18:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200261 +; + +-- Oct 4, 2013 2:18:32 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET DisplayLogic='@AD_Process_ID@!0',Updated=TO_DATE('2013-10-04 14:18:32','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200263 +; + +SELECT register_migration_script('201310040834_IDEMPIERE-1265.sql') FROM dual +; + diff --git a/migration/i1.0z/postgresql/201310040834_IDEMPIERE-1265.sql b/migration/i1.0z/postgresql/201310040834_IDEMPIERE-1265.sql new file mode 100644 index 0000000000..8c4cb13818 --- /dev/null +++ b/migration/i1.0z/postgresql/201310040834_IDEMPIERE-1265.sql @@ -0,0 +1,84 @@ +-- Oct 4, 2013 2:14:15 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +INSERT INTO AD_Column (SeqNoSelection,IsSyncDatabase,Version,AD_Table_ID,AD_Column_ID,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsParent,FieldLength,IsSelectionColumn,AD_Reference_ID,IsKey,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsUpdateable,ColumnName,Name,IsAllowCopy,Updated,CreatedBy,AD_Org_ID,IsActive,Created,UpdatedBy,IsToolbarButton,IsAlwaysUpdateable,AD_Client_ID,EntityType,IsEncrypted,AD_Element_ID,IsSecure) VALUES (0,'N',1,50010,210876,'N','N','N',0,'N',22,'N',19,'N','N','Y','db439ec4-6b77-4ff5-8776-8072546bc082','Y','AD_Chart_ID','Chart','Y',TO_TIMESTAMP('2013-10-04 14:14:00','YYYY-MM-DD HH24:MI:SS'),100,0,'Y',TO_TIMESTAMP('2013-10-04 14:14:00','YYYY-MM-DD HH24:MI:SS'),100,'N','N',0,'D','N',54268,'N') +; + +-- Oct 4, 2013 2:14:22 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +ALTER TABLE PA_DashboardContent ADD COLUMN AD_Chart_ID NUMERIC(10) DEFAULT NULL +; + +-- Oct 4, 2013 2:14:24 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +ALTER TABLE PA_DashboardContent ADD CONSTRAINT ADChart_PADashboardContent FOREIGN KEY (AD_Chart_ID) REFERENCES ad_chart(ad_chart_id) +; + +-- Oct 4, 2013 2:15:34 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +INSERT INTO AD_Field (SortNo,IsEncrypted,AD_Tab_ID,DisplayLength,IsSameLine,IsHeading,AD_Column_ID,SeqNo,IsCentrallyMaintained,AD_Field_ID,IsReadOnly,EntityType,Name,AD_Field_UU,IsDisplayed,IsFieldOnly,UpdatedBy,AD_Org_ID,Created,CreatedBy,Updated,IsActive,IsDisplayedGrid,SeqNoGrid,XPosition,IsQuickEntry,AD_Client_ID,ColumnSpan,NumLines,IsDefaultFocus,IsAdvancedField) VALUES (0,'N',50010,0,'N','N',210876,220,'Y',202524,'N','D','Chart','f123637a-5269-42a3-ac5f-5dd3fac19b8a','Y','N',100,0,TO_TIMESTAMP('2013-10-04 14:15:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2013-10-04 14:15:25','YYYY-MM-DD HH24:MI:SS'),'Y','Y',190,1,'N',0,2,1,'N','N') +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=110, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=57344 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=120, IsDisplayed='Y', XPosition=1,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=51013 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=130,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200262 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=140,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200261 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=150,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200263 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=160, IsDisplayed='Y', XPosition=1,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202524 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=170, IsDisplayed='Y', XPosition=2,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=56504 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=180, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200268 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=190, IsDisplayed='Y', XPosition=2,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200260 +; + +-- Oct 4, 2013 2:17:27 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET SeqNo=200, IsDisplayed='Y', XPosition=4,Updated=TO_TIMESTAMP('2013-10-04 14:17:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202286 +; + +-- Oct 4, 2013 2:18:25 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET DisplayLogic='@AD_Process_ID@!0',Updated=TO_TIMESTAMP('2013-10-04 14:18:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200261 +; + +-- Oct 4, 2013 2:18:32 PM MYT +-- IDEMPIERE-1265 Add Adaxa Sales Management +UPDATE AD_Field SET DisplayLogic='@AD_Process_ID@!0',Updated=TO_TIMESTAMP('2013-10-04 14:18:32','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200263 +; + +SELECT register_migration_script('201310040834_IDEMPIERE-1265.sql') FROM dual +; + + diff --git a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java index 9dc66fd23b..63e00db760 100644 --- a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java +++ b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java @@ -41,6 +41,17 @@ public interface I_PA_DashboardContent /** Load Meta Data */ + /** Column name AD_Chart_ID */ + public static final String COLUMNNAME_AD_Chart_ID = "AD_Chart_ID"; + + /** Set Chart */ + public void setAD_Chart_ID (int AD_Chart_ID); + + /** Get Chart */ + public int getAD_Chart_ID(); + + public org.compiere.model.I_AD_Chart getAD_Chart() throws RuntimeException; + /** Column name AD_Client_ID */ public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID"; @@ -251,6 +262,15 @@ public interface I_PA_DashboardContent */ public boolean isShowInDashboard(); + /** Column name IsShowinLogin */ + public static final String COLUMNNAME_IsShowinLogin = "IsShowinLogin"; + + /** Set IsShowinLogin */ + public void setIsShowinLogin (boolean IsShowinLogin); + + /** Get IsShowinLogin */ + public boolean isShowinLogin(); + /** Column name Line */ public static final String COLUMNNAME_Line = "Line"; @@ -342,13 +362,13 @@ public interface I_PA_DashboardContent /** Column name ZulFilePath */ public static final String COLUMNNAME_ZulFilePath = "ZulFilePath"; - /** Set ZUL File Path. - * Absolute path to zul file + /** Set Gadget URI. + * URI for Dashboard Gadget */ public void setZulFilePath (String ZulFilePath); - /** Get ZUL File Path. - * Absolute path to zul file + /** Get Gadget URI. + * URI for Dashboard Gadget */ public String getZulFilePath(); } diff --git a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent_Access.java b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent_Access.java index 0d39217692..3ef2ab7cfb 100644 --- a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent_Access.java +++ b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent_Access.java @@ -92,19 +92,6 @@ public interface I_PA_DashboardContent_Access public org.compiere.model.I_AD_User getAD_User() throws RuntimeException; - /** Column name ColumnNo */ - public static final String COLUMNNAME_ColumnNo = "ColumnNo"; - - /** Set Column No. - * Dashboard content column number - */ - public void setColumnNo (int ColumnNo); - - /** Get Column No. - * Dashboard content column number - */ - public int getColumnNo(); - /** Column name Created */ public static final String COLUMNNAME_Created = "Created"; @@ -134,54 +121,6 @@ public interface I_PA_DashboardContent_Access */ public boolean isActive(); - /** Column name IsCollapsedByDefault */ - public static final String COLUMNNAME_IsCollapsedByDefault = "IsCollapsedByDefault"; - - /** Set Collapsed By Default. - * Flag to set the initial state of collapsible field group. - */ - public void setIsCollapsedByDefault (boolean IsCollapsedByDefault); - - /** Get Collapsed By Default. - * Flag to set the initial state of collapsible field group. - */ - public boolean isCollapsedByDefault(); - - /** Column name IsShowInDashboard */ - public static final String COLUMNNAME_IsShowInDashboard = "IsShowInDashboard"; - - /** Set Show in Dashboard. - * Show the dashlet in the dashboard - */ - public void setIsShowInDashboard (boolean IsShowInDashboard); - - /** Get Show in Dashboard. - * Show the dashlet in the dashboard - */ - public boolean isShowInDashboard(); - - /** Column name IsShowinLogin */ - public static final String COLUMNNAME_IsShowinLogin = "IsShowinLogin"; - - /** Set IsShowinLogin */ - public void setIsShowinLogin (boolean IsShowinLogin); - - /** Get IsShowinLogin */ - public boolean isShowinLogin(); - - /** Column name Line */ - public static final String COLUMNNAME_Line = "Line"; - - /** Set Line No. - * Unique line for this document - */ - public void setLine (int Line); - - /** Get Line No. - * Unique line for this document - */ - public int getLine(); - /** Column name PA_DashboardContent_Access_ID */ public static final String COLUMNNAME_PA_DashboardContent_Access_ID = "PA_DashboardContent_Access_ID"; diff --git a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java index b1a914ab39..04bcbbfbd9 100644 --- a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java +++ b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java @@ -32,7 +32,7 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, /** * */ - private static final long serialVersionUID = 20130626L; + private static final long serialVersionUID = 20131004L; /** Standard Constructor */ public X_PA_DashboardContent (Properties ctx, int PA_DashboardContent_ID, String trxName) @@ -81,6 +81,31 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, return sb.toString(); } + public org.compiere.model.I_AD_Chart getAD_Chart() throws RuntimeException + { + return (org.compiere.model.I_AD_Chart)MTable.get(getCtx(), org.compiere.model.I_AD_Chart.Table_Name) + .getPO(getAD_Chart_ID(), get_TrxName()); } + + /** Set Chart. + @param AD_Chart_ID Chart */ + public void setAD_Chart_ID (int AD_Chart_ID) + { + if (AD_Chart_ID < 1) + set_Value (COLUMNNAME_AD_Chart_ID, null); + else + set_Value (COLUMNNAME_AD_Chart_ID, Integer.valueOf(AD_Chart_ID)); + } + + /** Get Chart. + @return Chart */ + public int getAD_Chart_ID () + { + Integer ii = (Integer)get_Value(COLUMNNAME_AD_Chart_ID); + if (ii == null) + return 0; + return ii.intValue(); + } + public org.compiere.model.I_AD_Process getAD_Process() throws RuntimeException { return (org.compiere.model.I_AD_Process)MTable.get(getCtx(), org.compiere.model.I_AD_Process.Table_Name) @@ -364,6 +389,27 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, return false; } + /** Set IsShowinLogin. + @param IsShowinLogin IsShowinLogin */ + public void setIsShowinLogin (boolean IsShowinLogin) + { + set_Value (COLUMNNAME_IsShowinLogin, Boolean.valueOf(IsShowinLogin)); + } + + /** Get IsShowinLogin. + @return IsShowinLogin */ + public boolean isShowinLogin () + { + Object oo = get_Value(COLUMNNAME_IsShowinLogin); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + /** Set Line No. @param Line Unique line for this document @@ -488,17 +534,17 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, return (String)get_Value(COLUMNNAME_ProcessParameters); } - /** Set ZUL File Path. + /** Set Gadget URI. @param ZulFilePath - Absolute path to zul file + URI for Dashboard Gadget */ public void setZulFilePath (String ZulFilePath) { set_Value (COLUMNNAME_ZulFilePath, ZulFilePath); } - /** Get ZUL File Path. - @return Absolute path to zul file + /** Get Gadget URI. + @return URI for Dashboard Gadget */ public String getZulFilePath () { diff --git a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent_Access.java b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent_Access.java index c2a0ae6ae3..5232cd64cd 100644 --- a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent_Access.java +++ b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent_Access.java @@ -29,7 +29,7 @@ public class X_PA_DashboardContent_Access extends PO implements I_PA_DashboardCo /** * */ - private static final long serialVersionUID = 20130903L; + private static final long serialVersionUID = 20131004L; /** Standard Constructor */ public X_PA_DashboardContent_Access (Properties ctx, int PA_DashboardContent_Access_ID, String trxName) @@ -125,115 +125,6 @@ public class X_PA_DashboardContent_Access extends PO implements I_PA_DashboardCo return ii.intValue(); } - /** Set Column No. - @param ColumnNo - Dashboard content column number - */ - public void setColumnNo (int ColumnNo) - { - set_Value (COLUMNNAME_ColumnNo, Integer.valueOf(ColumnNo)); - } - - /** Get Column No. - @return Dashboard content column number - */ - public int getColumnNo () - { - Integer ii = (Integer)get_Value(COLUMNNAME_ColumnNo); - if (ii == null) - return 0; - return ii.intValue(); - } - - /** Set Collapsed By Default. - @param IsCollapsedByDefault - Flag to set the initial state of collapsible field group. - */ - public void setIsCollapsedByDefault (boolean IsCollapsedByDefault) - { - set_Value (COLUMNNAME_IsCollapsedByDefault, Boolean.valueOf(IsCollapsedByDefault)); - } - - /** Get Collapsed By Default. - @return Flag to set the initial state of collapsible field group. - */ - public boolean isCollapsedByDefault () - { - Object oo = get_Value(COLUMNNAME_IsCollapsedByDefault); - if (oo != null) - { - if (oo instanceof Boolean) - return ((Boolean)oo).booleanValue(); - return "Y".equals(oo); - } - return false; - } - - /** Set Show in Dashboard. - @param IsShowInDashboard - Show the dashlet in the dashboard - */ - public void setIsShowInDashboard (boolean IsShowInDashboard) - { - set_Value (COLUMNNAME_IsShowInDashboard, Boolean.valueOf(IsShowInDashboard)); - } - - /** Get Show in Dashboard. - @return Show the dashlet in the dashboard - */ - public boolean isShowInDashboard () - { - Object oo = get_Value(COLUMNNAME_IsShowInDashboard); - if (oo != null) - { - if (oo instanceof Boolean) - return ((Boolean)oo).booleanValue(); - return "Y".equals(oo); - } - return false; - } - - /** Set IsShowinLogin. - @param IsShowinLogin IsShowinLogin */ - public void setIsShowinLogin (boolean IsShowinLogin) - { - set_Value (COLUMNNAME_IsShowinLogin, Boolean.valueOf(IsShowinLogin)); - } - - /** Get IsShowinLogin. - @return IsShowinLogin */ - public boolean isShowinLogin () - { - Object oo = get_Value(COLUMNNAME_IsShowinLogin); - if (oo != null) - { - if (oo instanceof Boolean) - return ((Boolean)oo).booleanValue(); - return "Y".equals(oo); - } - return false; - } - - /** Set Line No. - @param Line - Unique line for this document - */ - public void setLine (int Line) - { - set_ValueNoCheck (COLUMNNAME_Line, Integer.valueOf(Line)); - } - - /** Get Line No. - @return Unique line for this document - */ - public int getLine () - { - Integer ii = (Integer)get_Value(COLUMNNAME_Line); - if (ii == null) - return 0; - return ii.intValue(); - } - /** Set PA_DashboardContent_Access_ID. @param PA_DashboardContent_Access_ID PA_DashboardContent_Access_ID */ public void setPA_DashboardContent_Access_ID (int PA_DashboardContent_Access_ID) diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java index 4e7375ae7c..76916ea5d7 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java @@ -38,8 +38,10 @@ import org.adempiere.webui.factory.IDashboardGadgetFactory; import org.adempiere.webui.report.HTMLExtension; import org.adempiere.webui.session.SessionManager; import org.adempiere.webui.theme.ThemeManager; +import org.adempiere.webui.util.ChartRenderer; import org.adempiere.webui.window.ZkReportViewerProvider; import org.compiere.model.I_AD_Menu; +import org.compiere.model.MChart; import org.compiere.model.MDashboardContent; import org.compiere.model.MDashboardContentAccess; import org.compiere.model.MDashboardPreference; @@ -368,6 +370,17 @@ public class DashboardController implements EventListener { } } + //chart + int AD_Chart_ID = dc.getAD_Chart_ID(); + if (AD_Chart_ID > 0) { + Panel chartPanel = new Panel(); + MChart chartModel = new MChart(Env.getCtx(), AD_Chart_ID, null); + ChartRenderer renderer = new ChartRenderer(chartModel); + renderer.render(chartPanel, 300); + content.appendChild(chartPanel); + panelEmpty = false; + } + if (panelEmpty) panel.detach(); } diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WChartEditor.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WChartEditor.java index b39fd240a0..a46a12f632 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WChartEditor.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/editor/WChartEditor.java @@ -14,36 +14,14 @@ package org.adempiere.webui.editor; -import java.awt.image.BufferedImage; -import java.util.Iterator; -import java.util.logging.Level; - -import org.adempiere.webui.apps.AEnv; +import org.adempiere.webui.util.ChartRenderer; import org.compiere.model.GridField; import org.compiere.model.MChart; -import org.compiere.model.MQuery; import org.compiere.util.CLogger; import org.compiere.util.Env; -import org.jfree.chart.ChartRenderingInfo; -import org.jfree.chart.JFreeChart; -import org.jfree.chart.encoders.EncoderUtil; -import org.jfree.chart.encoders.ImageFormat; -import org.jfree.chart.entity.CategoryItemEntity; -import org.jfree.chart.entity.ChartEntity; -import org.jfree.chart.entity.PieSectionEntity; -import org.jfree.chart.entity.XYItemEntity; -import org.jfree.data.time.TimeSeries; -import org.jfree.data.time.TimeSeriesCollection; -import org.jfree.data.time.TimeSeriesDataItem; -import org.zkoss.image.AImage; import org.zkoss.zk.ui.event.Event; -import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; -import org.zkoss.zk.ui.event.MouseEvent; -import org.zkoss.zul.Area; -import org.zkoss.zul.Imagemap; import org.zkoss.zul.Panel; -import org.zkoss.zul.Panelchildren; /** * This class is based on org.compiere.grid.ed.WImageEditor and WGraph written by Low Heng Sin. @@ -56,31 +34,23 @@ public class WChartEditor extends WEditor { private static final String[] LISTENER_EVENTS = {Events.ON_CLICK}; - @SuppressWarnings("unused") - private static final CLogger logger; - - static - { - logger = CLogger.getCLogger(WChartEditor.class); - } - private MChart chartModel = null; /** Logger */ - private static CLogger log = CLogger.getCLogger(WChartEditor.class); + @SuppressWarnings("unused") + private static final CLogger log = CLogger.getCLogger(WChartEditor.class); public WChartEditor(GridField gridField, int windowNo) { super(new Panel(), gridField); chartModel = new MChart(Env.getCtx(), gridField.getAD_Chart_ID(), null); chartModel.setWindowNo(windowNo); - init(); - + init(); } - public void createChart() { - - render(chartModel.createChart()); + private void createChart() { + ChartRenderer renderer = new ChartRenderer(chartModel); + renderer.render(getComponent(), 400); } @Override @@ -88,107 +58,6 @@ public class WChartEditor extends WEditor return (Panel) component; } - private void render(JFreeChart chart) { - ChartRenderingInfo info = new ChartRenderingInfo(); - int width = 400; - int height = chartModel.getWinHeight(); - BufferedImage bi = chart.createBufferedImage(width, height, - BufferedImage.TRANSLUCENT, info); - try { - byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true); - - AImage image = new AImage("", bytes); - Imagemap myImage = new Imagemap(); - - Panel panel = getComponent(); - myImage.setContent(image); - if (panel.getPanelchildren() != null) { - panel.getPanelchildren().getChildren().clear(); - panel.getPanelchildren().appendChild(myImage); - } else { - Panelchildren pc = new Panelchildren(); - panel.appendChild(pc); - pc.appendChild(myImage); - pc.setSclass("chart-field"); - } - - int count = 0; - for (Iterator it = info.getEntityCollection().getEntities() - .iterator(); it.hasNext();) { - ChartEntity entity = (ChartEntity) it.next(); - - String key = null; - String seriesName = null; - if (entity instanceof CategoryItemEntity) - { - CategoryItemEntity item = ((CategoryItemEntity)entity); - Comparable colKey = item.getColumnKey(); - Comparable rowKey = item.getRowKey(); - if (colKey != null && rowKey !=null) - { - key = colKey.toString(); - seriesName = rowKey.toString(); - } - } - else if (entity instanceof PieSectionEntity) - { - Comparable sectionKey = ((PieSectionEntity)entity).getSectionKey(); - if (sectionKey != null) - { - key = sectionKey.toString(); - } - } - if (entity instanceof XYItemEntity) - { - XYItemEntity item = ((XYItemEntity)entity); - if ( item.getDataset() instanceof TimeSeriesCollection ) - { - TimeSeriesCollection data = (TimeSeriesCollection) item.getDataset(); - TimeSeries series = data.getSeries(item.getSeriesIndex()); - TimeSeriesDataItem dataitem = series.getDataItem(item.getItem()); - seriesName = series.getKey().toString(); - key = dataitem.getPeriod().toString(); - } - } - - if ( key == null ) - continue; - - Area area = new Area(); - myImage.appendChild(area); - area.setCoords(entity.getShapeCoords()); - area.setShape(entity.getShapeType()); - area.setTooltiptext(entity.getToolTipText()); - area.setId(count+"_WG__" + seriesName + "__" + key); - count++; - } - - myImage.addEventListener(Events.ON_CLICK, new EventListener() { - public void onEvent(Event event) throws Exception { - MouseEvent me = (MouseEvent) event; - String areaId = me.getArea(); - if (areaId != null) { - String[] strs = areaId.split("__"); - if (strs.length == 3) - { - chartMouseClicked(strs[2], strs[1]); - } - } - } - }); - } catch (Exception e) { - log.log(Level.SEVERE, "", e); - } - - - } - - public void chartMouseClicked(String key, String category) { - MQuery query = chartModel.getQuery("null".equals(category) ? key : category + "__" + key); - if (query != null) - AEnv.zoom(query); - } - private void init() { } @@ -242,17 +111,11 @@ public class WChartEditor extends WEditor public void onEvent(Event event) throws Exception { - if (Events.ON_CLICK.equals(event.getName())) - { - - - } } @Override public void dynamicDisplay() { super.dynamicDisplay(); - createChart(); - + createChart(); } } diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/util/ChartRenderer.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/util/ChartRenderer.java new file mode 100644 index 0000000000..377d3db3b2 --- /dev/null +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/util/ChartRenderer.java @@ -0,0 +1,153 @@ +package org.adempiere.webui.util; + +import java.awt.image.BufferedImage; +import java.util.Iterator; +import java.util.logging.Level; + +import org.adempiere.webui.apps.AEnv; +import org.compiere.model.MChart; +import org.compiere.model.MQuery; +import org.compiere.util.CLogger; +import org.jfree.chart.ChartRenderingInfo; +import org.jfree.chart.JFreeChart; +import org.jfree.chart.encoders.EncoderUtil; +import org.jfree.chart.encoders.ImageFormat; +import org.jfree.chart.entity.CategoryItemEntity; +import org.jfree.chart.entity.ChartEntity; +import org.jfree.chart.entity.PieSectionEntity; +import org.jfree.chart.entity.XYItemEntity; +import org.jfree.data.time.TimeSeries; +import org.jfree.data.time.TimeSeriesCollection; +import org.jfree.data.time.TimeSeriesDataItem; +import org.zkoss.image.AImage; +import org.zkoss.zk.ui.event.Event; +import org.zkoss.zk.ui.event.EventListener; +import org.zkoss.zk.ui.event.Events; +import org.zkoss.zk.ui.event.MouseEvent; +import org.zkoss.zul.Area; +import org.zkoss.zul.Imagemap; +import org.zkoss.zul.Panel; +import org.zkoss.zul.Panelchildren; + +/** + * @author Paul Bowden, Adaxa Pty Ltd + * @author hengsin + * + */ +public class ChartRenderer { + + private static final CLogger log = CLogger.getCLogger(ChartRenderer.class); + + private MChart chartModel; + + /** + * @param chartModel + */ + public ChartRenderer(MChart chartModel) { + this.chartModel = chartModel; + } + + /** + * + * @param panel + * @param width + */ + public void render(Panel panel, int width) { + JFreeChart chart = chartModel.createChart(); + + ChartRenderingInfo info = new ChartRenderingInfo(); + int height = chartModel.getWinHeight(); + BufferedImage bi = chart.createBufferedImage(width, height, + BufferedImage.TRANSLUCENT, info); + try { + byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true); + + AImage image = new AImage("", bytes); + Imagemap myImage = new Imagemap(); + + myImage.setContent(image); + if (panel.getPanelchildren() != null) { + panel.getPanelchildren().getChildren().clear(); + panel.getPanelchildren().appendChild(myImage); + } else { + Panelchildren pc = new Panelchildren(); + panel.appendChild(pc); + pc.appendChild(myImage); + pc.setSclass("chart-field"); + } + + int count = 0; + for (Iterator it = info.getEntityCollection().getEntities() + .iterator(); it.hasNext();) { + ChartEntity entity = (ChartEntity) it.next(); + + String key = null; + String seriesName = null; + if (entity instanceof CategoryItemEntity) + { + CategoryItemEntity item = ((CategoryItemEntity)entity); + Comparable colKey = item.getColumnKey(); + Comparable rowKey = item.getRowKey(); + if (colKey != null && rowKey !=null) + { + key = colKey.toString(); + seriesName = rowKey.toString(); + } + } + else if (entity instanceof PieSectionEntity) + { + Comparable sectionKey = ((PieSectionEntity)entity).getSectionKey(); + if (sectionKey != null) + { + key = sectionKey.toString(); + } + } + if (entity instanceof XYItemEntity) + { + XYItemEntity item = ((XYItemEntity)entity); + if ( item.getDataset() instanceof TimeSeriesCollection ) + { + TimeSeriesCollection data = (TimeSeriesCollection) item.getDataset(); + TimeSeries series = data.getSeries(item.getSeriesIndex()); + TimeSeriesDataItem dataitem = series.getDataItem(item.getItem()); + seriesName = series.getKey().toString(); + key = dataitem.getPeriod().toString(); + } + } + + if ( key == null ) + continue; + + Area area = new Area(); + myImage.appendChild(area); + area.setCoords(entity.getShapeCoords()); + area.setShape(entity.getShapeType()); + area.setTooltiptext(entity.getToolTipText()); + area.setId(count+"_WG__" + seriesName + "__" + key); + count++; + } + + myImage.addEventListener(Events.ON_CLICK, new EventListener() { + public void onEvent(Event event) throws Exception { + MouseEvent me = (MouseEvent) event; + String areaId = me.getArea(); + if (areaId != null) { + String[] strs = areaId.split("__"); + if (strs.length == 3) + { + chartMouseClicked(strs[2], strs[1]); + } + } + } + }); + } catch (Exception e) { + log.log(Level.SEVERE, "", e); + } + } + + public void chartMouseClicked(String key, String category) { + MQuery query = chartModel.getQuery("null".equals(category) ? key : category + "__" + key); + if (query != null) + AEnv.zoom(query); + } +}