IDEMPIERE-3340: Tree Structurable User Favorite (#334)
This commit is contained in:
parent
03d668bf51
commit
01d52fbfef
|
@ -0,0 +1,244 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
-- User Favorite Panel
|
||||||
|
-- Jun 7, 2017 5:16:46 PM IST
|
||||||
|
INSERT INTO AD_Table (AD_Table_ID,Name,Description,TableName,LoadSeq,AccessLevel,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSecurityEnabled,IsDeleteable,IsHighVolume,IsView,EntityType,ImportTable,IsChangeLog,ReplicationType,CopyColumnsFromTable,IsCentrallyMaintained,AD_Table_UU,Processing,DatabaseViewDrop,CopyComponentsFromView) VALUES (200220,'Favorite Tree','Show user favorite menu on dashboard','AD_Tree_Favorite',0,'7',0,0,'Y',TO_DATE('2017-06-07 17:16:44','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:16:44','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','N','D','N','N','L','N','Y','22aae804-ae4d-4983-8e9a-44821df6d2bf','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:16:47 PM IST
|
||||||
|
INSERT INTO AD_Sequence (Name,CurrentNext,IsAudited,StartNewYear,Description,IsActive,IsTableID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,AD_Sequence_ID,IsAutoSequence,StartNo,IncrementNo,CurrentNextSys,AD_Sequence_UU) VALUES ('AD_Tree_Favorite',1000000,'N','N','Table AD_Tree_Favorite','Y','Y',0,0,TO_DATE('2017-06-07 17:16:46','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:16:46','YYYY-MM-DD HH24:MI:SS'),100,200284,'Y',1000000,1,200000,'1ee2f67c-68b6-4178-b285-8b4058a77a6f')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:17:53 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213049,0,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200220,129,'AD_Client_ID','@#AD_Client_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:17:52','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:17:52','YYYY-MM-DD HH24:MI:SS'),100,102,'N','N','D','N','N','N','Y','4cf19db8-0024-485e-9b3b-24297ed4541c','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:18:33 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213050,0,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200220,104,'AD_Org_ID','@#AD_Org_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:18:32','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:18:32','YYYY-MM-DD HH24:MI:SS'),100,113,'N','Y','D','N','N','N','Y','0a285262-b6db-4300-80e5-44dcaad2bbc4','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:19:32 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213051,0,'Created','Date this record was created','The Created field indicates the date that this record was created.',200220,'Created','SYSDATE',7,'N','N','N','N','N',0,'N',16,0,0,'Y',TO_DATE('2017-06-07 17:19:31','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:19:31','YYYY-MM-DD HH24:MI:SS'),100,245,'N','N','D','N','N','N','Y','f61225c6-d01f-4bb6-9a97-12bbfa2470bb','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:20:04 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213052,0,'Created By','User who created this records','The Created By field indicates the user who created this record.',200220,'CreatedBy','@#AD_User_ID@',22,'N','N','N','N','N',0,'N',18,110,0,0,'Y',TO_DATE('2017-06-07 17:20:03','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:20:03','YYYY-MM-DD HH24:MI:SS'),100,246,'N','N','D','N','N','N','Y','ce404a00-9e20-415b-8f53-66798d6d787e','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:20:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213053,0,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200220,'IsActive','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_DATE('2017-06-07 17:20:39','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:20:39','YYYY-MM-DD HH24:MI:SS'),100,348,'Y','N','D','N','N','N','Y','b94d5376-03c8-4800-9943-2dd1a2642359','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:21:36 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213054,0,'Updated','Date this record was updated','The Updated field indicates the date that this record was updated.',200220,'Updated','SYSDATE',7,'N','N','N','N','N',0,'N',16,0,0,'Y',TO_DATE('2017-06-07 17:21:35','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:21:35','YYYY-MM-DD HH24:MI:SS'),100,607,'Y','N','D','N','N','N','Y','cf57f541-b98a-4386-bd0b-48ce1b4a3c20','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:22:11 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213055,0,'Updated By','User who updated this records','The Updated By field indicates the user who updated this record.',200220,'UpdatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_DATE('2017-06-07 17:22:09','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:22:09','YYYY-MM-DD HH24:MI:SS'),100,608,'N','N','D','N','N','N','Y','b227be8e-ef36-44af-929d-313afabcb2ce','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:23:19 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203084,0,0,'Y',TO_DATE('2017-06-07 17:23:18','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:23:18','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_ID','Favorite Tree','Favorite Tree','D','ce59c6fc-02d2-4292-90dc-64ce1f51d00a')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:23:41 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203085,0,0,'Y',TO_DATE('2017-06-07 17:23:40','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:23:40','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_UU','Favorite Tree','Favorite Tree','D','d8f6b15a-6a43-43b7-a3c5-b674443c978d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:24:20 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213056,0,'Favorite Tree',200220,'AD_Tree_Favorite_ID',22,'Y','N','Y','N','N',0,'N',13,0,0,'Y',TO_DATE('2017-06-07 17:24:19','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:24:19','YYYY-MM-DD HH24:MI:SS'),100,203084,'N','N','D','N','N','N','Y','eca5978b-cad6-4301-b2e2-d852c9fa7ef6','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:25:09 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213057,0,'Favorite Tree',200220,'AD_Tree_Favorite_UU',36,'N','N','N','N','N',0,'N',10,0,0,'Y',TO_DATE('2017-06-07 17:25:08','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:25:08','YYYY-MM-DD HH24:MI:SS'),100,203085,'N','N','D','N','N','N','Y','4d3f6761-8d45-478d-ba94-27f92b9cc058','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:26:09 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213058,0,'User/Contact','User within the system - Internal or Business Partner Contact','The User identifies a unique user in the system. This could be an internal user or a business partner contact',200220,'AD_User_ID',22,'N','Y','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:26:08','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:26:08','YYYY-MM-DD HH24:MI:SS'),100,138,'N','N','D','N','N','N','Y','e74f8bbc-7549-4e33-a0e0-e6eb9da7f9a7','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:47 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213059,0,'Role','Responsibility Role','The Role determines security and access a user who has this Role will have in the System.',200220,'AD_Role_ID',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:27:46','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:27:46','YYYY-MM-DD HH24:MI:SS'),100,123,'N','Y','D','N','N','N','Y','eba24ffb-32e5-4a0c-86af-f4043d76c1b4','Y',0,'N','N','C')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
UPDATE AD_Column SET FKConstraintName='ADRole_ADTreeFavorite', FKConstraintType='C',Updated=TO_DATE('2017-06-07 17:27:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213059
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADUser_ADTreeFavorite', FKConstraintType='N',Updated=TO_DATE('2017-06-07 17:27:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213058
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
CREATE TABLE AD_Tree_Favorite (AD_Client_ID NUMBER(10) NOT NULL, AD_Org_ID NUMBER(10) NOT NULL, AD_Role_ID NUMBER(10) NOT NULL, AD_Tree_Favorite_ID NUMBER(10) NOT NULL, AD_Tree_Favorite_UU VARCHAR2(36) DEFAULT NULL , AD_User_ID NUMBER(10) NOT NULL, Created DATE DEFAULT SYSDATE, CreatedBy NUMBER(10) DEFAULT NULL , IsActive VARCHAR2(1 CHAR) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, Updated DATE DEFAULT SYSDATE, UpdatedBy NUMBER(10) NOT NULL, CONSTRAINT AD_Tree_Favorite_Key PRIMARY KEY (AD_Tree_Favorite_ID), CONSTRAINT AD_Tree_Favorite_UU_idx UNIQUE (AD_Tree_Favorite_UU))
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite ADD CONSTRAINT ADRole_ADTreeFavorite FOREIGN KEY (AD_Role_ID) REFERENCES ad_role(ad_role_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite ADD CONSTRAINT ADUser_ADTreeFavorite FOREIGN KEY (AD_User_ID) REFERENCES ad_user(ad_user_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:30:39 PM IST
|
||||||
|
INSERT INTO AD_Table (AD_Table_ID,Name,TableName,LoadSeq,AccessLevel,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSecurityEnabled,IsDeleteable,IsHighVolume,IsView,EntityType,ImportTable,IsChangeLog,ReplicationType,CopyColumnsFromTable,IsCentrallyMaintained,AD_Table_UU,Processing,DatabaseViewDrop,CopyComponentsFromView) VALUES (200221,'Favorite Node Tree','AD_Tree_Favorite_Node',0,'7',0,0,'Y',TO_DATE('2017-06-07 17:30:38','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:30:38','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','N','D','N','N','L','N','Y','8235cfa4-0ef7-4a74-9f98-c1bf56c3ac68','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:30:40 PM IST
|
||||||
|
INSERT INTO AD_Sequence (Name,CurrentNext,IsAudited,StartNewYear,Description,IsActive,IsTableID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,AD_Sequence_ID,IsAutoSequence,StartNo,IncrementNo,CurrentNextSys,AD_Sequence_UU) VALUES ('AD_Tree_Favorite_Node',1000000,'N','N','Table AD_Tree_Favorite_Node','Y','Y',0,0,TO_DATE('2017-06-07 17:30:39','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:30:39','YYYY-MM-DD HH24:MI:SS'),100,200285,'Y',1000000,1,200000,'e7bd8544-7e2c-4cb4-9e33-37de2ced1ac3')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:31:37 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213060,0,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200221,129,'AD_Client_ID','@#AD_Client_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:31:36','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:31:36','YYYY-MM-DD HH24:MI:SS'),100,102,'N','N','D','N','N','N','Y','af5536e6-c0bd-4576-9873-124a3efe5bf4','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:31:59 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213061,0,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200221,104,'AD_Org_ID','@#AD_Org_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:31:58','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:31:58','YYYY-MM-DD HH24:MI:SS'),100,113,'N','N','D','N','N','N','Y','709a9598-5719-4c9d-92bb-a6049bfeec03','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:32:35 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213062,0,'Created','Date this record was created','The Created field indicates the date that this record was created.',200221,'Created','SYSDATE',7,'N','N','Y','N','N',0,'N',16,0,0,'Y',TO_DATE('2017-06-07 17:32:34','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:32:34','YYYY-MM-DD HH24:MI:SS'),100,245,'Y','N','D','N','N','N','Y','53ddb0b9-4fe2-44d7-bbfc-bac7c9425f20','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:33:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213063,0,'Created By','User who created this records','The Created By field indicates the user who created this record.',200221,'CreatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_DATE('2017-06-07 17:33:39','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:33:39','YYYY-MM-DD HH24:MI:SS'),100,246,'Y','N','D','N','N','N','Y','cff8d4ca-f835-4cc3-a8ca-0a7d5b9fd53c','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:34:06 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213064,0,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200221,'IsActive','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_DATE('2017-06-07 17:34:05','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:34:05','YYYY-MM-DD HH24:MI:SS'),100,348,'Y','N','D','N','N','N','Y','56fb740d-48fc-4d39-a43a-540694efadab','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:34:34 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213065,0,'Updated','Date this record was updated','The Updated field indicates the date that this record was updated.',200221,'Updated','SYSDATE',7,'N','N','Y','N','N',0,'N',16,0,0,'Y',TO_DATE('2017-06-07 17:34:33','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:34:33','YYYY-MM-DD HH24:MI:SS'),100,607,'Y','N','D','N','N','N','Y','3b597bf5-0cbe-4cf9-8233-0c28e67cc321','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:35:12 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213066,0,'Updated By','User who updated this records','The Updated By field indicates the user who updated this record.',200221,'UpdatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_DATE('2017-06-07 17:35:11','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:35:11','YYYY-MM-DD HH24:MI:SS'),100,608,'Y','N','D','N','N','N','Y','5452ee32-2bba-42a1-b60b-68de07d348c7','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:36:09 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203086,0,0,'Y',TO_DATE('2017-06-07 17:36:08','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:36:08','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_Node_ID','Favorite Node Tree','Favorite Node Tree','D','471c6cba-b917-4bfc-b0ed-007a7f7d2c62')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:36:32 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203087,0,0,'Y',TO_DATE('2017-06-07 17:36:31','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:36:31','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_Node_UU','Favorite Node Tree','Favorite Node Tree','D','a6af8334-c55d-46c7-9002-d8225fa87c77')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:37:24 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213067,0,'Favorite Node Tree',200221,'AD_Tree_Favorite_Node_ID',22,'Y','N','Y','N','N',0,'N',13,0,0,'Y',TO_DATE('2017-06-07 17:37:23','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:37:23','YYYY-MM-DD HH24:MI:SS'),100,203086,'N','N','D','N','N','N','Y','0302266a-defe-4a79-8112-5cc262086965','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:37:44 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213068,0,'Favorite Node Tree',200221,'AD_Tree_Favorite_Node_UU',36,'N','N','N','N','N',0,'N',10,0,0,'Y',TO_DATE('2017-06-07 17:37:43','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:37:43','YYYY-MM-DD HH24:MI:SS'),100,203087,'N','N','D','N','N','N','Y','b349c3e3-c713-4339-a5bf-0f3b3fa97b3a','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:38:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213069,0,'Favorite Tree',200221,'AD_Tree_Favorite_ID',22,'N','Y','Y','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:38:39','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:38:39','YYYY-MM-DD HH24:MI:SS'),100,203084,'N','N','D','N','N','N','Y','6ba5cc25-925e-4490-89ad-dd560334174e','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:39:42 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213070,0,'Parent','Parent of Entity','The Parent indicates the value used to represent the next level in a hierarchy or report to level for a record',200221,'Parent_ID',10,'N','N','N','N','N',0,'N',13,0,0,'Y',TO_DATE('2017-06-07 17:39:41','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:39:41','YYYY-MM-DD HH24:MI:SS'),100,496,'Y','N','D','N','N','N','Y','a510e39a-78e0-4888-b7c3-85b164f437c2','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:40:39 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213071,0,'Summary Level','This is a summary entity','A summary entity represents a branch in a tree rather than an end-node. Summary entities are used for reporting and do not have own values.',200221,'IsSummary','N',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_DATE('2017-06-07 17:40:38','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:40:38','YYYY-MM-DD HH24:MI:SS'),100,416,'Y','Y','D','N','N','N','Y','30f402c7-8b4e-43ce-87d1-9251782be4d3','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:41:19 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213072,0,'Menu','Identifies a Menu','The Menu identifies a unique Menu. Menus are used to control the display of those screens a user has access to.',200221,'AD_Menu_ID',10,'N','Y','N','N','N',0,'N',19,0,0,'Y',TO_DATE('2017-06-07 17:41:18','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:41:18','YYYY-MM-DD HH24:MI:SS'),100,110,'N','Y','D','N','N','N','Y','e5112a1f-260d-4d3d-931e-add3cb91bd08','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:41:52 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213073,0,'Sequence','Method of ordering records; lowest number comes first','The Sequence indicates the order of records',200221,'SeqNo',22,'N','N','Y','N','N',0,'N',11,0,0,'Y',TO_DATE('2017-06-07 17:41:51','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:41:51','YYYY-MM-DD HH24:MI:SS'),100,566,'Y','N','D','N','N','N','Y','44bb0318-34c7-40fd-99cc-f393e4f27819','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:42:29 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213074,0,'Collapsible','Flag to indicate the state of the dashboard panel','Flag to indicate the state of the dashboard panel (i.e. collapsible or static)',200221,'IsCollapsible','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_DATE('2017-06-07 17:42:28','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:42:28','YYYY-MM-DD HH24:MI:SS'),100,53715,'Y','N','D','N','N','N','Y','5c53a75f-8ffb-41c7-a463-c7103eee18f3','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:44:53 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213075,0,'Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.',200221,'Name',120,'N','N','N','N','Y',0,'N',10,0,0,'Y',TO_DATE('2017-06-07 17:44:52','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:44:52','YYYY-MM-DD HH24:MI:SS'),100,469,'Y','Y','D','N','N','N','Y','7ca11262-ac52-44f9-aa10-839ddea6e92a','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:54:31 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Start With Expanded',0,0,'Y',TO_DATE('2017-06-07 17:54:30','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:54:30','YYYY-MM-DD HH24:MI:SS'),100,200417,'StartWithExpanded','D','0f0c4535-582e-47ca-850d-3526a5cac5b5')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:56:09 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Start With Collapsed',0,0,'Y',TO_DATE('2017-06-07 17:56:08','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:56:08','YYYY-MM-DD HH24:MI:SS'),100,200418,'StartWithCollapsed','D','a9572f15-a0a3-431b-869d-5251893457d3')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:56:55 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Add Root',0,0,'Y',TO_DATE('2017-06-07 17:56:54','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:56:54','YYYY-MM-DD HH24:MI:SS'),100,200419,'AddAsRoot','D','afff706d-1680-4abd-b051-99557ad2b56e')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:57:37 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Add a folder to Favorite Tree',0,0,'Y',TO_DATE('2017-06-07 17:57:35','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 17:57:35','YYYY-MM-DD HH24:MI:SS'),100,200420,'AddFolderFavTree','D','e19815e6-2830-469d-ab52-2c682cb3fdf1')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 6:03:16 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Could not create Node.',0,0,'Y',TO_DATE('2017-06-07 18:03:15','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-07 18:03:15','YYYY-MM-DD HH24:MI:SS'),100,200421,'NodeNotCreate','D','4a212f59-33f2-4317-a1e7-9ca3d3cdaf6f')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADMenu_ADTreeFavoriteNode', FKConstraintType='N',Updated=TO_DATE('2017-06-12 12:55:53','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213072
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADTreeFavorite_ADTreeFavoriteN', FKConstraintType='N',Updated=TO_DATE('2017-06-12 12:55:53','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213069
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
CREATE TABLE AD_Tree_Favorite_Node (AD_Client_ID NUMBER(10) NOT NULL, AD_Menu_ID NUMBER(10) DEFAULT NULL , AD_Org_ID NUMBER(10) NOT NULL, AD_Tree_Favorite_ID NUMBER(10) NOT NULL, AD_Tree_Favorite_Node_ID NUMBER(10) NOT NULL, AD_Tree_Favorite_Node_UU VARCHAR2(36) DEFAULT NULL , Created DATE DEFAULT SYSDATE NOT NULL, CreatedBy NUMBER(10) NOT NULL, IsActive VARCHAR2(1 CHAR) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsCollapsible VARCHAR2(1 CHAR) DEFAULT 'Y' CHECK (IsCollapsible IN ('Y','N')) NOT NULL, IsSummary VARCHAR2(1 CHAR) DEFAULT 'N' CHECK (IsSummary IN ('Y','N')) NOT NULL, Name VARCHAR2(120) DEFAULT NULL , Parent_ID NUMBER(10) DEFAULT NULL , SeqNo NUMBER(10) NOT NULL, Updated DATE DEFAULT SYSDATE NOT NULL, UpdatedBy NUMBER(10) NOT NULL, CONSTRAINT AD_Tree_Favorite_Node_Key PRIMARY KEY (AD_Tree_Favorite_Node_ID), CONSTRAINT AD_Tree_Favorite_Node_UU_idx UNIQUE (AD_Tree_Favorite_Node_UU))
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:54 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT ADMenu_ADTreeFavoriteNode FOREIGN KEY (AD_Menu_ID) REFERENCES ad_menu(ad_menu_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:54 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT ADTreeFavorite_ADTreeFavoriteN FOREIGN KEY (AD_Tree_Favorite_ID) REFERENCES ad_tree_favorite(ad_tree_favorite_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 1:13:43 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Could not create Favorite Tree.',0,0,'Y',TO_DATE('2017-06-12 13:13:41','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-12 13:13:41','YYYY-MM-DD HH24:MI:SS'),100,200423,'FavTreeNotCreate','D','6270a5e3-fb23-4cb2-9616-1cdf34833551')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 1:22:04 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Please drag an item from a menu.',0,0,'Y',TO_DATE('2017-06-12 13:22:03','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-12 13:22:03','YYYY-MM-DD HH24:MI:SS'),100,200424,'DragItemMenu','D','8b3ed4ca-6cee-4b8c-a0b3-1664ce31dedc')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:31:02 PM IST
|
||||||
|
INSERT INTO AD_Reference (AD_Reference_ID,Name,ValidationType,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,IsOrderByValue,AD_Reference_UU) VALUES (200137,'AD_Tree_Favorite_Node list','T',0,0,'Y',TO_DATE('2017-06-12 18:31:00','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-12 18:31:00','YYYY-MM-DD HH24:MI:SS'),100,'D','N','47f185a4-37d5-426e-b386-8fabc0f0f49d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:31:54 PM IST
|
||||||
|
INSERT INTO AD_Ref_Table (AD_Reference_ID,AD_Table_ID,AD_Key,AD_Display,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsValueDisplayed,EntityType,AD_Ref_Table_UU) VALUES (200137,200221,213067,213067,0,0,'Y',TO_DATE('2017-06-12 18:31:54','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-12 18:31:54','YYYY-MM-DD HH24:MI:SS'),100,'N','D','aa2ae14c-2b0f-43e3-84bb-eac6d3aa2c5d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:35:17 PM IST
|
||||||
|
UPDATE AD_Column SET AD_Reference_ID=18, AD_Reference_Value_ID=200137, FKConstraintType='C',Updated=TO_DATE('2017-06-12 18:35:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213070
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:38:26 PM IST
|
||||||
|
UPDATE AD_Column SET FKConstraintName='Parent_ADTreeFavoriteNode', FKConstraintType='C',Updated=TO_DATE('2017-06-12 18:38:26','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213070
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:38:26 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT Parent_ADTreeFavoriteNode FOREIGN KEY (Parent_ID) REFERENCES ad_tree_favorite_node(ad_tree_favorite_node_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 13, 2017 12:22:06 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Edit Folder Name',0,0,'Y',TO_DATE('2017-06-13 12:22:05','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2017-06-13 12:22:05','YYYY-MM-DD HH24:MI:SS'),100,200425,'EditFolderName','D','651947f5-cce5-4ce9-8b59-7d1859f734e1')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201706131200_IDEMPIERE-3340.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,455 @@
|
||||||
|
SET SQLBLANKLINES ON
|
||||||
|
SET DEFINE OFF
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Oct 27, 2020, 1:09:51 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (214329,0,'Favourite','This record is a favourite',200221,'IsFavourite','N',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_DATE('2020-10-27 13:09:50','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:09:50','YYYY-MM-DD HH24:MI:SS'),100,202958,'Y','N','D','N','N','N','Y','708ea949-31bc-4f53-8dba-12877cc92d14','Y',0,'N','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:09:53 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD IsFavourite VARCHAR2(1 CHAR) DEFAULT 'N' CHECK (IsFavourite IN ('Y','N')) NOT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:10:41 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (214330,0,'Login automatic open sequence','Determine the order items will be automatically opened when user logs in',200221,'LoginOpenSeqNo',10,'N','N','N','N','N',0,'N',11,0,0,'Y',TO_DATE('2020-10-27 13:10:40','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:10:40','YYYY-MM-DD HH24:MI:SS'),100,202959,'Y','N','D','N','N','N','Y','011087cb-d674-410d-80dc-aed66be6c9e7','Y',0,'N','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:10:42 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD LoginOpenSeqNo NUMBER(10) DEFAULT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:12:22 PM IST
|
||||||
|
INSERT INTO AD_Window (AD_Window_ID,Name,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,WindowType,Processing,EntityType,IsSOTrx,IsDefault,WinHeight,WinWidth,IsBetaFunctionality,AD_Window_UU) VALUES (200111,'Menu user favourites',0,0,'Y',TO_DATE('2020-10-27 13:12:21','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:12:21','YYYY-MM-DD HH24:MI:SS'),100,'M','N','D','Y','N',0,0,'N','349d39cf-af9c-4fbe-81d8-3b295dc9f27b')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:26 PM IST
|
||||||
|
INSERT INTO AD_Tab (AD_Tab_ID,Name,Description,AD_Window_ID,SeqNo,IsSingleRow,AD_Table_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,HasTree,IsInfoTab,IsTranslationTab,IsReadOnly,Processing,ImportFields,TabLevel,IsSortTab,EntityType,IsInsertRecord,IsAdvancedTab,AD_Tab_UU,TreeDisplayedOn,IsLookupOnlySelection,IsAllowAdvancedLookup,MaxQueryRecords) VALUES (200282,'Menu user tree entries','In this tab, you will be able to manage user and role wise favorite tree reference. ',200111,10,'N',200220,0,0,'Y',TO_DATE('2020-10-27 13:14:25','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:25','YYYY-MM-DD HH24:MI:SS'),100,'N','N','N','N','N','N',0,'N','D','Y','N','768d15d3-e60d-4074-ad47-8d632111ae4e','B','N','Y',0)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206522,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200282,213049,'Y',22,10,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:54','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:54','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','20f2b60f-ed58-49ed-9c8d-f256bb772e9a','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsAllowCopy,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206523,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200282,213050,'Y',22,20,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:55','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','a0bc8024-f2aa-47d2-ab16-e01d09d46639','Y','Y',10,4,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:56 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206524,'User/Contact','User within the system - Internal or Business Partner Contact','The User identifies a unique user in the system. This could be an internal user or a business partner contact',200282,213058,'Y',22,30,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','422b6a7d-fc62-437f-8be6-11e78eb1fb21','Y',20,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206525,'Favorite Tree',200282,213056,'N',22,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','46f335ae-8aca-4167-b011-3f3f64ededc0','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206526,'Favorite Tree',200282,213057,'Y',36,40,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f65e13bc-742b-4e90-820b-c5c750dae66b','Y',30,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:59 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206527,'Role','Responsibility Role','The Role determines security and access a user who has this Role will have in the System.',200282,213059,'Y',22,50,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','ae35b9e6-0a27-4cdf-8c02-e91133ca7ce9','Y',40,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:00 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206528,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200282,213053,'Y',1,60,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:14:59','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:14:59','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','521637bc-19e5-4236-9093-d223f19d28a9','Y',50,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206527
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=60, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206528
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:35 PM IST
|
||||||
|
INSERT INTO AD_Tab (AD_Tab_ID,Name,AD_Window_ID,SeqNo,IsSingleRow,AD_Table_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,HasTree,IsInfoTab,IsTranslationTab,IsReadOnly,Processing,ImportFields,TabLevel,IsSortTab,EntityType,IsInsertRecord,IsAdvancedTab,Parent_Column_ID,AD_Tab_UU,IsLookupOnlySelection,IsAllowAdvancedLookup,MaxQueryRecords) VALUES (200283,'Menu user tree node',200111,20,'N',200221,0,0,'Y',TO_DATE('2020-10-27 13:18:34','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:34','YYYY-MM-DD HH24:MI:SS'),100,'N','N','N','Y','N','N',1,'N','D','N','N',213056,'cbd7fc14-c206-4cb0-a827-168fb792f470','N','Y',0)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:47 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206529,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200283,213060,'Y',22,10,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:46','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:46','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f0b86ed8-7b7e-4278-8aa0-4f4bb16fc0fc','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:48 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsAllowCopy,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206530,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200283,213061,'Y',22,20,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:47','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:47','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f12031fe-075c-4848-a880-d7a582857e54','Y','Y',10,4,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:48 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206531,'Favorite Tree',200283,213069,'Y',22,30,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','db41ef17-3eb3-43d2-a149-1bb61a810619','Y',20,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:49 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206532,'Menu','Identifies a Menu','The Menu identifies a unique Menu. Menus are used to control the display of those screens a user has access to.',200283,213072,'Y',10,40,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','c7ef010b-f045-4ee3-a2bc-4ec6bddd4d76','Y',30,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:51 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206533,'Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.',200283,213075,'Y',120,50,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:49','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:49','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','822ea6ba-2e63-4f41-a8ff-38dd61586e03','Y',40,5)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:52 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206534,'Favorite Node Tree',200283,213067,'N',22,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:51','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:51','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','7fc05af5-1916-4d07-a5ef-36e9494b2ca6','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:52 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206535,'Favorite Node Tree',200283,213068,'Y',36,60,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f2348f88-0c43-484f-8ab7-a4309b6d5b41','Y',50,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:53 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206536,'Parent','Parent of Entity','The Parent indicates the value used to represent the next level in a hierarchy or report to level for a record',200283,213070,'Y',10,70,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','38cbaac4-c899-43aa-bdc7-1b6a440f7cfb','Y',60,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:54 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206537,'Summary Level','This is a summary entity','A summary entity represents a branch in a tree rather than an end-node. Summary entities are used for reporting and do not have own values.',200283,213071,'Y',1,80,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:53','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:53','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9f36b258-b1c9-4240-b2f8-43374a9bfdf7','Y',70,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206538,'Sequence','Method of ordering records; lowest number comes first','The Sequence indicates the order of records',200283,213073,'Y',22,90,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:54','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:54','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','69126a11-32e9-4c12-9333-de17e44a870e','Y',80,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206539,'Collapsible','Flag to indicate the state of the dashboard panel','Flag to indicate the state of the dashboard panel (i.e. collapsible or static)',200283,213074,'Y',1,100,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','ebf3e753-4775-4f37-b3fb-7697c0463963','Y',90,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:56 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206540,'Favourite','This record is a favourite',200283,214329,'Y',1,110,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','25793ae9-b08a-44cf-b3f4-a00cd2fbf0b5','Y',100,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206541,'Login automatic open sequence','Determine the order items will be automatically opened when user logs in',200283,214330,'Y',10,120,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:56','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','e655d21c-470e-4e25-9ea4-c87482922324','Y',110,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:59 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206542,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200283,213064,'Y',1,130,'N','N','N','N',0,0,'Y',TO_DATE('2020-10-27 13:18:57','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:18:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','05e112f8-121f-4364-9ec2-e43730bf8f13','Y',120,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206532
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=60, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206536
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=70, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206533
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=80, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=90, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206539
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=100, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206538
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=110, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206540
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=130, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206537
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:22:27 PM IST
|
||||||
|
UPDATE AD_Tab SET IsReadOnly='Y', IsInsertRecord='N',Updated=TO_DATE('2020-10-27 13:22:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200282
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:25:50 PM IST
|
||||||
|
INSERT INTO AD_Menu (AD_Menu_ID,Name,Description,Action,AD_Window_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSummary,IsSOTrx,IsReadOnly,EntityType,IsCentrallyMaintained,AD_Menu_UU) VALUES (200175,'Menu user favourites','User favourites menu','W',200111,0,0,'Y',TO_DATE('2020-10-27 13:25:49','YYYY-MM-DD HH24:MI:SS'),100,TO_DATE('2020-10-27 13:25:49','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','D','Y','9b0c1e47-4fae-4cbd-80d5-66119ca4ed94')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:25:50 PM IST
|
||||||
|
INSERT INTO AD_TreeNodeMM (AD_Client_ID,AD_Org_ID, IsActive,Created,CreatedBy,Updated,UpdatedBy, AD_Tree_ID, Node_ID, Parent_ID, SeqNo, AD_TreeNodeMM_UU) SELECT t.AD_Client_ID, 0, 'Y', getDate(), 100, getDate(), 100,t.AD_Tree_ID, 200175, 0, 999, Generate_UUID() FROM AD_Tree t WHERE t.AD_Client_ID=0 AND t.IsActive='Y' AND t.IsAllNodes='Y' AND t.TreeType='MM' AND NOT EXISTS (SELECT * FROM AD_TreeNodeMM e WHERE e.AD_Tree_ID=t.AD_Tree_ID AND Node_ID=200175)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=0, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=218
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=1, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=153
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=2, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=263
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=3, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=166
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=4, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=203
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=5, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=53242
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=6, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=236
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=7, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=183
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=8, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=160
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=9, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=278
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=10, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=345
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=11, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=53296
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=12, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=53014
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=13, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=53108
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=0, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=334
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=1, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=498
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=2, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=224
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=3, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=145
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=4, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=336
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=5, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=341
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=6, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=144
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=7, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=170
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=8, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=465
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=9, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=200137
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=10, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=200175
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=11, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=101
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=12, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=294
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=13, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=395
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=14, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=296
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=15, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=221
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=16, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=233
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=17, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=290
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=18, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=109
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=19, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=200093
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=20, Updated=getDate() WHERE AD_Tree_ID=10 AND Node_ID=50008
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:08:25 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-28 17:08:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:08:25 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='N', SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-28 17:08:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=80, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=2, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='N', SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_DATE('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:10:22 PM IST
|
||||||
|
UPDATE AD_Tab SET Name='Favorite tree node',Updated=TO_DATE('2020-10-28 17:10:22','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200283
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:11:56 PM IST
|
||||||
|
UPDATE AD_Tab SET Name='User favourite tree', Description='In this tab, you can see to manage user and role wise favourite tree references',Updated=TO_DATE('2020-10-28 17:11:56','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200282
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=0,IsDisplayedGrid='N', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=10,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206522
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=20,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206523
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=30,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=50,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206524
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=60,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206528
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=0,IsDisplayedGrid='N', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=10,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206529
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=20,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206530
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=30,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206531
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=40,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=50,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206532
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=60,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206533
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=70,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206536
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=80,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206537
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=90,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206538
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=100,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206539
|
||||||
|
;
|
||||||
|
0
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=110,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206540
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=120,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206541
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=130,IsDisplayedGrid='Y', Updated=getDate(), UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- IDEMPIERE-3340 InActive existing AD_TreeBar table
|
||||||
|
-- Oct 30, 2020, 11:37:24 AM IST
|
||||||
|
UPDATE AD_Table SET IsActive='N',Updated=TO_DATE('2020-10-30 11:37:24','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=456
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 30, 2020, 11:37:39 AM IST
|
||||||
|
UPDATE AD_Window SET IsActive='N',Updated=TO_DATE('2020-10-30 11:37:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Window_ID=200083
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 30, 2020, 11:37:39 AM IST
|
||||||
|
UPDATE AD_Menu SET Name='Menu favourites', Description=NULL, IsActive='N',Updated=TO_DATE('2020-10-30 11:37:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Menu_ID=200137
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('202010281900_IDEMPIERE-3340.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
-- ORACLE Data Migration from AD_TreeBar to AD_Tree_Favorite and AD_Tree_Favorite_Node table
|
||||||
|
-- Insert TreeBar data to Tree Favorite
|
||||||
|
INSERT INTO AD_Tree_Favorite
|
||||||
|
(AD_Tree_Favorite_ID,
|
||||||
|
AD_Client_ID, AD_Org_ID, AD_User_ID,
|
||||||
|
AD_Role_ID,
|
||||||
|
Created, CreatedBy, Updated, UpdatedBy, AD_Tree_Favorite_UU)
|
||||||
|
|
||||||
|
SELECT (row_number() OVER (ORDER BY AD_Client_ID, AD_User_ID)) + (SELECT CASE WHEN COALESCE(MAX(AD_Tree_Favorite_ID),0)> 0 THEN COALESCE(MAX(AD_Tree_Favorite_ID),0) ELSE 1000000 END FROM AD_Tree_Favorite),
|
||||||
|
AD_Client_ID, 0, AD_User_ID,
|
||||||
|
(SELECT AD_Role_ID FROM AD_User_Roles WHERE AD_Client_ID = tb.AD_Client_ID AND AD_User_ID = tb.AD_User_ID ORDER BY Created FETCH FIRST 1 ROW ONLY),
|
||||||
|
SYSDATE, 100, SYSDATE, 100, Generate_UUID()
|
||||||
|
FROM AD_TreeBar tb
|
||||||
|
GROUP BY AD_Client_ID, AD_User_ID;
|
||||||
|
|
||||||
|
|
||||||
|
-- Insert TreeBar data to Tree Favorite Node
|
||||||
|
INSERT INTO AD_Tree_Favorite_Node
|
||||||
|
(AD_Client_ID, AD_Menu_ID, AD_Org_ID,
|
||||||
|
AD_Tree_Favorite_ID,
|
||||||
|
AD_Tree_Favorite_Node_ID,
|
||||||
|
AD_Tree_Favorite_Node_UU, Created, CreatedBy, IsSummary, SeqNo, Updated, UpdatedBy, IsFavourite, LoginOpenSeqNo)
|
||||||
|
|
||||||
|
SELECT AD_Client_ID, Node_ID, AD_Org_ID,
|
||||||
|
(SELECT MAX(AD_Tree_Favorite_ID) FROM AD_Tree_Favorite WHERE AD_Client_ID = tb.AD_Client_ID AND AD_User_ID=tb.AD_User_ID),
|
||||||
|
(row_number() OVER (ORDER BY AD_Client_ID, AD_User_ID)) + (SELECT CASE WHEN COALESCE(MAX(AD_Tree_Favorite_Node_ID),0)> 0 THEN COALESCE(MAX(AD_Tree_Favorite_Node_ID),0) ELSE 1000000 END FROM AD_Tree_Favorite_Node),
|
||||||
|
Generate_UUID(), SYSDATE, 100, 'N', 0, SYSDATE, 100, 'Y',LoginOpenSeqNo
|
||||||
|
FROM AD_TreeBar tb;
|
||||||
|
|
||||||
|
SELECT register_migration_script('202010291500_IDEMPIERE-3340_MigrateData.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,241 @@
|
||||||
|
-- User Favorite Panel
|
||||||
|
-- Jun 7, 2017 5:16:46 PM IST
|
||||||
|
INSERT INTO AD_Table (AD_Table_ID,Name,Description,TableName,LoadSeq,AccessLevel,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSecurityEnabled,IsDeleteable,IsHighVolume,IsView,EntityType,ImportTable,IsChangeLog,ReplicationType,CopyColumnsFromTable,IsCentrallyMaintained,AD_Table_UU,Processing,DatabaseViewDrop,CopyComponentsFromView) VALUES (200220,'Favorite Tree','Show user favorite menu on dashboard','AD_Tree_Favorite',0,'7',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:16:44','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:16:44','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','N','D','N','N','L','N','Y','22aae804-ae4d-4983-8e9a-44821df6d2bf','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:16:47 PM IST
|
||||||
|
INSERT INTO AD_Sequence (Name,CurrentNext,IsAudited,StartNewYear,Description,IsActive,IsTableID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,AD_Sequence_ID,IsAutoSequence,StartNo,IncrementNo,CurrentNextSys,AD_Sequence_UU) VALUES ('AD_Tree_Favorite',1000000,'N','N','Table AD_Tree_Favorite','Y','Y',0,0,TO_TIMESTAMP('2017-06-07 17:16:46','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:16:46','YYYY-MM-DD HH24:MI:SS'),100,200284,'Y',1000000,1,200000,'1ee2f67c-68b6-4178-b285-8b4058a77a6f')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:17:53 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213049,0,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200220,129,'AD_Client_ID','@#AD_Client_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:17:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:17:52','YYYY-MM-DD HH24:MI:SS'),100,102,'N','N','D','N','N','N','Y','4cf19db8-0024-485e-9b3b-24297ed4541c','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:18:33 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213050,0,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200220,104,'AD_Org_ID','@#AD_Org_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:18:32','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:18:32','YYYY-MM-DD HH24:MI:SS'),100,113,'N','Y','D','N','N','N','Y','0a285262-b6db-4300-80e5-44dcaad2bbc4','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:19:32 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213051,0,'Created','Date this record was created','The Created field indicates the date that this record was created.',200220,'Created','SYSDATE',7,'N','N','N','N','N',0,'N',16,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:19:31','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:19:31','YYYY-MM-DD HH24:MI:SS'),100,245,'N','N','D','N','N','N','Y','f61225c6-d01f-4bb6-9a97-12bbfa2470bb','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:20:04 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213052,0,'Created By','User who created this records','The Created By field indicates the user who created this record.',200220,'CreatedBy','@#AD_User_ID@',22,'N','N','N','N','N',0,'N',18,110,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:20:03','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:20:03','YYYY-MM-DD HH24:MI:SS'),100,246,'N','N','D','N','N','N','Y','ce404a00-9e20-415b-8f53-66798d6d787e','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:20:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213053,0,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200220,'IsActive','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:20:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:20:39','YYYY-MM-DD HH24:MI:SS'),100,348,'Y','N','D','N','N','N','Y','b94d5376-03c8-4800-9943-2dd1a2642359','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:21:36 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213054,0,'Updated','Date this record was updated','The Updated field indicates the date that this record was updated.',200220,'Updated','SYSDATE',7,'N','N','N','N','N',0,'N',16,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:21:35','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:21:35','YYYY-MM-DD HH24:MI:SS'),100,607,'Y','N','D','N','N','N','Y','cf57f541-b98a-4386-bd0b-48ce1b4a3c20','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:22:11 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213055,0,'Updated By','User who updated this records','The Updated By field indicates the user who updated this record.',200220,'UpdatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:22:09','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:22:09','YYYY-MM-DD HH24:MI:SS'),100,608,'N','N','D','N','N','N','Y','b227be8e-ef36-44af-929d-313afabcb2ce','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:23:19 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203084,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:23:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:23:18','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_ID','Favorite Tree','Favorite Tree','D','ce59c6fc-02d2-4292-90dc-64ce1f51d00a')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:23:41 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203085,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:23:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:23:40','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_UU','Favorite Tree','Favorite Tree','D','d8f6b15a-6a43-43b7-a3c5-b674443c978d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:24:20 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213056,0,'Favorite Tree',200220,'AD_Tree_Favorite_ID',22,'Y','N','Y','N','N',0,'N',13,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:24:19','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:24:19','YYYY-MM-DD HH24:MI:SS'),100,203084,'N','N','D','N','N','N','Y','eca5978b-cad6-4301-b2e2-d852c9fa7ef6','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:25:09 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213057,0,'Favorite Tree',200220,'AD_Tree_Favorite_UU',36,'N','N','N','N','N',0,'N',10,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:25:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:25:08','YYYY-MM-DD HH24:MI:SS'),100,203085,'N','N','D','N','N','N','Y','4d3f6761-8d45-478d-ba94-27f92b9cc058','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:26:09 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213058,0,'User/Contact','User within the system - Internal or Business Partner Contact','The User identifies a unique user in the system. This could be an internal user or a business partner contact',200220,'AD_User_ID',22,'N','Y','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:26:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:26:08','YYYY-MM-DD HH24:MI:SS'),100,138,'N','N','D','N','N','N','Y','e74f8bbc-7549-4e33-a0e0-e6eb9da7f9a7','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:47 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213059,0,'Role','Responsibility Role','The Role determines security and access a user who has this Role will have in the System.',200220,'AD_Role_ID',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:27:46','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:27:46','YYYY-MM-DD HH24:MI:SS'),100,123,'N','Y','D','N','N','N','Y','eba24ffb-32e5-4a0c-86af-f4043d76c1b4','Y',0,'N','N','C')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
UPDATE AD_Column SET FKConstraintName='ADRole_ADTreeFavorite', FKConstraintType='C',Updated=TO_TIMESTAMP('2017-06-07 17:27:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213059
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADUser_ADTreeFavorite', FKConstraintType='N',Updated=TO_TIMESTAMP('2017-06-07 17:27:57','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213058
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
CREATE TABLE AD_Tree_Favorite (AD_Client_ID NUMERIC(10) NOT NULL, AD_Org_ID NUMERIC(10) NOT NULL, AD_Role_ID NUMERIC(10) NOT NULL, AD_Tree_Favorite_ID NUMERIC(10) NOT NULL, AD_Tree_Favorite_UU VARCHAR(36) DEFAULT NULL , AD_User_ID NUMERIC(10) NOT NULL, Created TIMESTAMP DEFAULT statement_timestamp(), CreatedBy NUMERIC(10) DEFAULT NULL , IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, Updated TIMESTAMP DEFAULT statement_timestamp(), UpdatedBy NUMERIC(10) NOT NULL, CONSTRAINT AD_Tree_Favorite_Key PRIMARY KEY (AD_Tree_Favorite_ID), CONSTRAINT AD_Tree_Favorite_UU_idx UNIQUE (AD_Tree_Favorite_UU))
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite ADD CONSTRAINT ADRole_ADTreeFavorite FOREIGN KEY (AD_Role_ID) REFERENCES ad_role(ad_role_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:27:57 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite ADD CONSTRAINT ADUser_ADTreeFavorite FOREIGN KEY (AD_User_ID) REFERENCES ad_user(ad_user_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:30:39 PM IST
|
||||||
|
INSERT INTO AD_Table (AD_Table_ID,Name,TableName,LoadSeq,AccessLevel,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSecurityEnabled,IsDeleteable,IsHighVolume,IsView,EntityType,ImportTable,IsChangeLog,ReplicationType,CopyColumnsFromTable,IsCentrallyMaintained,AD_Table_UU,Processing,DatabaseViewDrop,CopyComponentsFromView) VALUES (200221,'Favorite Node Tree','AD_Tree_Favorite_Node',0,'7',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:30:38','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:30:38','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','N','D','N','N','L','N','Y','8235cfa4-0ef7-4a74-9f98-c1bf56c3ac68','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:30:40 PM IST
|
||||||
|
INSERT INTO AD_Sequence (Name,CurrentNext,IsAudited,StartNewYear,Description,IsActive,IsTableID,AD_Client_ID,AD_Org_ID,Created,CreatedBy,Updated,UpdatedBy,AD_Sequence_ID,IsAutoSequence,StartNo,IncrementNo,CurrentNextSys,AD_Sequence_UU) VALUES ('AD_Tree_Favorite_Node',1000000,'N','N','Table AD_Tree_Favorite_Node','Y','Y',0,0,TO_TIMESTAMP('2017-06-07 17:30:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:30:39','YYYY-MM-DD HH24:MI:SS'),100,200285,'Y',1000000,1,200000,'e7bd8544-7e2c-4cb4-9e33-37de2ced1ac3')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:31:37 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213060,0,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200221,129,'AD_Client_ID','@#AD_Client_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:31:36','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:31:36','YYYY-MM-DD HH24:MI:SS'),100,102,'N','N','D','N','N','N','Y','af5536e6-c0bd-4576-9873-124a3efe5bf4','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:31:59 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,AD_Val_Rule_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213061,0,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200221,104,'AD_Org_ID','@#AD_Org_ID@',22,'N','N','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:31:58','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:31:58','YYYY-MM-DD HH24:MI:SS'),100,113,'N','N','D','N','N','N','Y','709a9598-5719-4c9d-92bb-a6049bfeec03','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:32:35 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213062,0,'Created','Date this record was created','The Created field indicates the date that this record was created.',200221,'Created','SYSDATE',7,'N','N','Y','N','N',0,'N',16,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:32:34','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:32:34','YYYY-MM-DD HH24:MI:SS'),100,245,'Y','N','D','N','N','N','Y','53ddb0b9-4fe2-44d7-bbfc-bac7c9425f20','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:33:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213063,0,'Created By','User who created this records','The Created By field indicates the user who created this record.',200221,'CreatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:33:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:33:39','YYYY-MM-DD HH24:MI:SS'),100,246,'Y','N','D','N','N','N','Y','cff8d4ca-f835-4cc3-a8ca-0a7d5b9fd53c','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:34:06 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213064,0,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200221,'IsActive','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:34:05','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:34:05','YYYY-MM-DD HH24:MI:SS'),100,348,'Y','N','D','N','N','N','Y','56fb740d-48fc-4d39-a43a-540694efadab','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:34:34 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213065,0,'Updated','Date this record was updated','The Updated field indicates the date that this record was updated.',200221,'Updated','SYSDATE',7,'N','N','Y','N','N',0,'N',16,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:34:33','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:34:33','YYYY-MM-DD HH24:MI:SS'),100,607,'Y','N','D','N','N','N','Y','3b597bf5-0cbe-4cf9-8233-0c28e67cc321','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:35:12 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Reference_Value_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213066,0,'Updated By','User who updated this records','The Updated By field indicates the user who updated this record.',200221,'UpdatedBy','@#AD_User_ID@',22,'N','N','Y','N','N',0,'N',18,110,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:35:11','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:35:11','YYYY-MM-DD HH24:MI:SS'),100,608,'Y','N','D','N','N','N','Y','5452ee32-2bba-42a1-b60b-68de07d348c7','N',0,'N','N','D')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:36:09 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203086,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:36:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:36:08','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_Node_ID','Favorite Node Tree','Favorite Node Tree','D','471c6cba-b917-4bfc-b0ed-007a7f7d2c62')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:36:32 PM IST
|
||||||
|
INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203087,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:36:31','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:36:31','YYYY-MM-DD HH24:MI:SS'),100,'AD_Tree_Favorite_Node_UU','Favorite Node Tree','Favorite Node Tree','D','a6af8334-c55d-46c7-9002-d8225fa87c77')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:37:24 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213067,0,'Favorite Node Tree',200221,'AD_Tree_Favorite_Node_ID',22,'Y','N','Y','N','N',0,'N',13,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:37:23','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:37:23','YYYY-MM-DD HH24:MI:SS'),100,203086,'N','N','D','N','N','N','Y','0302266a-defe-4a79-8112-5cc262086965','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:37:44 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213068,0,'Favorite Node Tree',200221,'AD_Tree_Favorite_Node_UU',36,'N','N','N','N','N',0,'N',10,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:37:43','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:37:43','YYYY-MM-DD HH24:MI:SS'),100,203087,'N','N','D','N','N','N','Y','b349c3e3-c713-4339-a5bf-0f3b3fa97b3a','N',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:38:40 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213069,0,'Favorite Tree',200221,'AD_Tree_Favorite_ID',22,'N','Y','Y','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:38:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:38:39','YYYY-MM-DD HH24:MI:SS'),100,203084,'N','N','D','N','N','N','Y','6ba5cc25-925e-4490-89ad-dd560334174e','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:39:42 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213070,0,'Parent','Parent of Entity','The Parent indicates the value used to represent the next level in a hierarchy or report to level for a record',200221,'Parent_ID',10,'N','N','N','N','N',0,'N',13,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:39:41','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:39:41','YYYY-MM-DD HH24:MI:SS'),100,496,'Y','N','D','N','N','N','Y','a510e39a-78e0-4888-b7c3-85b164f437c2','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:40:39 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213071,0,'Summary Level','This is a summary entity','A summary entity represents a branch in a tree rather than an end-node. Summary entities are used for reporting and do not have own values.',200221,'IsSummary','N',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:40:38','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:40:38','YYYY-MM-DD HH24:MI:SS'),100,416,'Y','Y','D','N','N','N','Y','30f402c7-8b4e-43ce-87d1-9251782be4d3','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:41:19 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType) VALUES (213072,0,'Menu','Identifies a Menu','The Menu identifies a unique Menu. Menus are used to control the display of those screens a user has access to.',200221,'AD_Menu_ID',10,'N','Y','N','N','N',0,'N',19,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:41:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:41:18','YYYY-MM-DD HH24:MI:SS'),100,110,'N','Y','D','N','N','N','Y','e5112a1f-260d-4d3d-931e-add3cb91bd08','Y',0,'N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:41:52 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213073,0,'Sequence','Method of ordering records; lowest number comes first','The Sequence indicates the order of records',200221,'SeqNo',22,'N','N','Y','N','N',0,'N',11,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:41:51','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:41:51','YYYY-MM-DD HH24:MI:SS'),100,566,'Y','N','D','N','N','N','Y','44bb0318-34c7-40fd-99cc-f393e4f27819','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:42:29 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213074,0,'Collapsible','Flag to indicate the state of the dashboard panel','Flag to indicate the state of the dashboard panel (i.e. collapsible or static)',200221,'IsCollapsible','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:42:28','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:42:28','YYYY-MM-DD HH24:MI:SS'),100,53715,'Y','N','D','N','N','N','Y','5c53a75f-8ffb-41c7-a463-c7103eee18f3','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:44:53 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,Help,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure) VALUES (213075,0,'Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.',200221,'Name',120,'N','N','N','N','Y',0,'N',10,0,0,'Y',TO_TIMESTAMP('2017-06-07 17:44:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:44:52','YYYY-MM-DD HH24:MI:SS'),100,469,'Y','Y','D','N','N','N','Y','7ca11262-ac52-44f9-aa10-839ddea6e92a','Y',0,'N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:54:31 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Start With Expanded',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:54:30','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:54:30','YYYY-MM-DD HH24:MI:SS'),100,200417,'StartWithExpanded','D','0f0c4535-582e-47ca-850d-3526a5cac5b5')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:56:09 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Start With Collapsed',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:56:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:56:08','YYYY-MM-DD HH24:MI:SS'),100,200418,'StartWithCollapsed','D','a9572f15-a0a3-431b-869d-5251893457d3')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:56:55 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Add Root',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:56:54','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:56:54','YYYY-MM-DD HH24:MI:SS'),100,200419,'AddAsRoot','D','afff706d-1680-4abd-b051-99557ad2b56e')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 5:57:37 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Add a folder to Favorite Tree',0,0,'Y',TO_TIMESTAMP('2017-06-07 17:57:35','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 17:57:35','YYYY-MM-DD HH24:MI:SS'),100,200420,'AddFolderFavTree','D','e19815e6-2830-469d-ab52-2c682cb3fdf1')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 7, 2017 6:03:16 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Could not create Node.',0,0,'Y',TO_TIMESTAMP('2017-06-07 18:03:15','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-07 18:03:15','YYYY-MM-DD HH24:MI:SS'),100,200421,'NodeNotCreate','D','4a212f59-33f2-4317-a1e7-9ca3d3cdaf6f')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADMenu_ADTreeFavoriteNode', FKConstraintType='N',Updated=TO_TIMESTAMP('2017-06-12 12:55:53','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213072
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
UPDATE AD_Column SET IsUpdateable='N', FKConstraintName='ADTreeFavorite_ADTreeFavoriteN', FKConstraintType='N',Updated=TO_TIMESTAMP('2017-06-12 12:55:53','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213069
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:53 PM IST
|
||||||
|
CREATE TABLE AD_Tree_Favorite_Node (AD_Client_ID NUMERIC(10) NOT NULL, AD_Menu_ID NUMERIC(10) DEFAULT NULL , AD_Org_ID NUMERIC(10) NOT NULL, AD_Tree_Favorite_ID NUMERIC(10) NOT NULL, AD_Tree_Favorite_Node_ID NUMERIC(10) NOT NULL, AD_Tree_Favorite_Node_UU VARCHAR(36) DEFAULT NULL , Created TIMESTAMP DEFAULT statement_timestamp() NOT NULL, CreatedBy NUMERIC(10) NOT NULL, IsActive CHAR(1) DEFAULT 'Y' CHECK (IsActive IN ('Y','N')) NOT NULL, IsCollapsible CHAR(1) DEFAULT 'Y' CHECK (IsCollapsible IN ('Y','N')) NOT NULL, IsSummary CHAR(1) DEFAULT 'N' CHECK (IsSummary IN ('Y','N')) NOT NULL, Name VARCHAR(120) DEFAULT NULL , Parent_ID NUMERIC(10) DEFAULT NULL , SeqNo NUMERIC(10) NOT NULL, Updated TIMESTAMP DEFAULT statement_timestamp() NOT NULL, UpdatedBy NUMERIC(10) NOT NULL, CONSTRAINT AD_Tree_Favorite_Node_Key PRIMARY KEY (AD_Tree_Favorite_Node_ID), CONSTRAINT AD_Tree_Favorite_Node_UU_idx UNIQUE (AD_Tree_Favorite_Node_UU))
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:54 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT ADMenu_ADTreeFavoriteNode FOREIGN KEY (AD_Menu_ID) REFERENCES ad_menu(ad_menu_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 12:55:54 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT ADTreeFavorite_ADTreeFavoriteN FOREIGN KEY (AD_Tree_Favorite_ID) REFERENCES ad_tree_favorite(ad_tree_favorite_id) DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 1:13:43 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Could not create Favorite Tree.',0,0,'Y',TO_TIMESTAMP('2017-06-12 13:13:41','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-12 13:13:41','YYYY-MM-DD HH24:MI:SS'),100,200423,'FavTreeNotCreate','D','6270a5e3-fb23-4cb2-9616-1cdf34833551')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 1:22:04 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('E','Please drag an item from a menu.',0,0,'Y',TO_TIMESTAMP('2017-06-12 13:22:03','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-12 13:22:03','YYYY-MM-DD HH24:MI:SS'),100,200424,'DragItemMenu','D','8b3ed4ca-6cee-4b8c-a0b3-1664ce31dedc')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:31:02 PM IST
|
||||||
|
INSERT INTO AD_Reference (AD_Reference_ID,Name,ValidationType,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,IsOrderByValue,AD_Reference_UU) VALUES (200137,'AD_Tree_Favorite_Node list','T',0,0,'Y',TO_TIMESTAMP('2017-06-12 18:31:00','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-12 18:31:00','YYYY-MM-DD HH24:MI:SS'),100,'D','N','47f185a4-37d5-426e-b386-8fabc0f0f49d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:31:54 PM IST
|
||||||
|
INSERT INTO AD_Ref_Table (AD_Reference_ID,AD_Table_ID,AD_Key,AD_Display,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsValueDisplayed,EntityType,AD_Ref_Table_UU) VALUES (200137,200221,213067,213067,0,0,'Y',TO_TIMESTAMP('2017-06-12 18:31:54','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-12 18:31:54','YYYY-MM-DD HH24:MI:SS'),100,'N','D','aa2ae14c-2b0f-43e3-84bb-eac6d3aa2c5d')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:35:17 PM IST
|
||||||
|
UPDATE AD_Column SET AD_Reference_ID=18, AD_Reference_Value_ID=200137, FKConstraintType='C',Updated=TO_TIMESTAMP('2017-06-12 18:35:17','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213070
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:38:26 PM IST
|
||||||
|
UPDATE AD_Column SET FKConstraintName='Parent_ADTreeFavoriteNode', FKConstraintType='C',Updated=TO_TIMESTAMP('2017-06-12 18:38:26','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Column_ID=213070
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 12, 2017 6:38:26 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD CONSTRAINT Parent_ADTreeFavoriteNode FOREIGN KEY (Parent_ID) REFERENCES ad_tree_favorite_node(ad_tree_favorite_node_id) ON DELETE CASCADE DEFERRABLE INITIALLY DEFERRED
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Jun 13, 2017 12:22:06 PM IST
|
||||||
|
INSERT INTO AD_Message (MsgType,MsgText,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Message_ID,Value,EntityType,AD_Message_UU) VALUES ('I','Edit Folder Name',0,0,'Y',TO_TIMESTAMP('2017-06-13 12:22:05','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2017-06-13 12:22:05','YYYY-MM-DD HH24:MI:SS'),100,200425,'EditFolderName','D','651947f5-cce5-4ce9-8b59-7d1859f734e1')
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('201706131200_IDEMPIERE-3340.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,451 @@
|
||||||
|
-- Oct 27, 2020, 1:09:51 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (214329,0,'Favourite','This record is a favourite',200221,'IsFavourite','N',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2020-10-27 13:09:50','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:09:50','YYYY-MM-DD HH24:MI:SS'),100,202958,'Y','N','D','N','N','N','Y','708ea949-31bc-4f53-8dba-12877cc92d14','Y',0,'N','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:09:53 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD COLUMN IsFavourite CHAR(1) DEFAULT 'N' CHECK (IsFavourite IN ('Y','N')) NOT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:10:41 PM IST
|
||||||
|
INSERT INTO AD_Column (AD_Column_ID,Version,Name,Description,AD_Table_ID,ColumnName,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (214330,0,'Login automatic open sequence','Determine the order items will be automatically opened when user logs in',200221,'LoginOpenSeqNo',10,'N','N','N','N','N',0,'N',11,0,0,'Y',TO_TIMESTAMP('2020-10-27 13:10:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:10:40','YYYY-MM-DD HH24:MI:SS'),100,202959,'Y','N','D','N','N','N','Y','011087cb-d674-410d-80dc-aed66be6c9e7','Y',0,'N','N','N','N')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:10:42 PM IST
|
||||||
|
ALTER TABLE AD_Tree_Favorite_Node ADD COLUMN LoginOpenSeqNo NUMERIC(10) DEFAULT NULL
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:12:22 PM IST
|
||||||
|
INSERT INTO AD_Window (AD_Window_ID,Name,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,WindowType,Processing,EntityType,IsSOTrx,IsDefault,WinHeight,WinWidth,IsBetaFunctionality,AD_Window_UU) VALUES (200111,'Menu user favourites',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:12:21','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:12:21','YYYY-MM-DD HH24:MI:SS'),100,'M','N','D','Y','N',0,0,'N','349d39cf-af9c-4fbe-81d8-3b295dc9f27b')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:26 PM IST
|
||||||
|
INSERT INTO AD_Tab (AD_Tab_ID,Name,Description,AD_Window_ID,SeqNo,IsSingleRow,AD_Table_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,HasTree,IsInfoTab,IsTranslationTab,IsReadOnly,Processing,ImportFields,TabLevel,IsSortTab,EntityType,IsInsertRecord,IsAdvancedTab,AD_Tab_UU,TreeDisplayedOn,IsLookupOnlySelection,IsAllowAdvancedLookup,MaxQueryRecords) VALUES (200282,'Menu user tree entries','In this tab, you will be able to manage user and role wise favorite tree reference. ',200111,10,'N',200220,0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:25','YYYY-MM-DD HH24:MI:SS'),100,'N','N','N','N','N','N',0,'N','D','Y','N','768d15d3-e60d-4074-ad47-8d632111ae4e','B','N','Y',0)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206522,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200282,213049,'Y',22,10,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:54','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:54','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','20f2b60f-ed58-49ed-9c8d-f256bb772e9a','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsAllowCopy,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206523,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200282,213050,'Y',22,20,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','a0bc8024-f2aa-47d2-ab16-e01d09d46639','Y','Y',10,4,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:56 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206524,'User/Contact','User within the system - Internal or Business Partner Contact','The User identifies a unique user in the system. This could be an internal user or a business partner contact',200282,213058,'Y',22,30,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','422b6a7d-fc62-437f-8be6-11e78eb1fb21','Y',20,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206525,'Favorite Tree',200282,213056,'N',22,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','46f335ae-8aca-4167-b011-3f3f64ededc0','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206526,'Favorite Tree',200282,213057,'Y',36,40,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f65e13bc-742b-4e90-820b-c5c750dae66b','Y',30,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:14:59 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206527,'Role','Responsibility Role','The Role determines security and access a user who has this Role will have in the System.',200282,213059,'Y',22,50,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','ae35b9e6-0a27-4cdf-8c02-e91133ca7ce9','Y',40,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:00 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206528,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200282,213053,'Y',1,60,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:14:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:14:59','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','521637bc-19e5-4236-9093-d223f19d28a9','Y',50,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206527
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=60, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206528
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:15:37 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:15:37','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:35 PM IST
|
||||||
|
INSERT INTO AD_Tab (AD_Tab_ID,Name,AD_Window_ID,SeqNo,IsSingleRow,AD_Table_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,HasTree,IsInfoTab,IsTranslationTab,IsReadOnly,Processing,ImportFields,TabLevel,IsSortTab,EntityType,IsInsertRecord,IsAdvancedTab,Parent_Column_ID,AD_Tab_UU,IsLookupOnlySelection,IsAllowAdvancedLookup,MaxQueryRecords) VALUES (200283,'Menu user tree node',200111,20,'N',200221,0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:34','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:34','YYYY-MM-DD HH24:MI:SS'),100,'N','N','N','Y','N','N',1,'N','D','N','N',213056,'cbd7fc14-c206-4cb0-a827-168fb792f470','N','Y',0)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:47 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206529,'Client','Client/Tenant for this installation.','A Client is a company or a legal entity. You cannot share data between Clients. Tenant is a synonym for Client.',200283,213060,'Y',22,10,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:46','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:46','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f0b86ed8-7b7e-4278-8aa0-4f4bb16fc0fc','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:48 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsAllowCopy,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206530,'Organization','Organizational entity within client','An organization is a unit of your client or legal entity - examples are store, department. You can share data between organizations.',200283,213061,'Y',22,20,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:47','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:47','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f12031fe-075c-4848-a880-d7a582857e54','Y','Y',10,4,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:48 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206531,'Favorite Tree',200283,213069,'Y',22,30,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','db41ef17-3eb3-43d2-a149-1bb61a810619','Y',20,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:49 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206532,'Menu','Identifies a Menu','The Menu identifies a unique Menu. Menus are used to control the display of those screens a user has access to.',200283,213072,'Y',10,40,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:48','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','c7ef010b-f045-4ee3-a2bc-4ec6bddd4d76','Y',30,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:51 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206533,'Name','Alphanumeric identifier of the entity','The name of an entity (record) is used as an default search option in addition to the search key. The name is up to 60 characters in length.',200283,213075,'Y',120,50,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:49','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:49','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','822ea6ba-2e63-4f41-a8ff-38dd61586e03','Y',40,5)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:52 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,ColumnSpan) VALUES (206534,'Favorite Node Tree',200283,213067,'N',22,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:51','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:51','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','7fc05af5-1916-4d07-a5ef-36e9494b2ca6','N',2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:52 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206535,'Favorite Node Tree',200283,213068,'Y',36,60,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','f2348f88-0c43-484f-8ab7-a4309b6d5b41','Y',50,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:53 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206536,'Parent','Parent of Entity','The Parent indicates the value used to represent the next level in a hierarchy or report to level for a record',200283,213070,'Y',10,70,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:52','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','38cbaac4-c899-43aa-bdc7-1b6a440f7cfb','Y',60,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:54 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206537,'Summary Level','This is a summary entity','A summary entity represents a branch in a tree rather than an end-node. Summary entities are used for reporting and do not have own values.',200283,213071,'Y',1,80,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:53','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:53','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9f36b258-b1c9-4240-b2f8-43374a9bfdf7','Y',70,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206538,'Sequence','Method of ordering records; lowest number comes first','The Sequence indicates the order of records',200283,213073,'Y',22,90,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:54','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:54','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','69126a11-32e9-4c12-9333-de17e44a870e','Y',80,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:55 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206539,'Collapsible','Flag to indicate the state of the dashboard panel','Flag to indicate the state of the dashboard panel (i.e. collapsible or static)',200283,213074,'Y',1,100,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','ebf3e753-4775-4f37-b3fb-7697c0463963','Y',90,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:56 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206540,'Favourite','This record is a favourite',200283,214329,'Y',1,110,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:55','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','25793ae9-b08a-44cf-b3f4-a00cd2fbf0b5','Y',100,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:57 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,ColumnSpan) VALUES (206541,'Login automatic open sequence','Determine the order items will be automatically opened when user logs in',200283,214330,'Y',10,120,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:56','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:56','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','e655d21c-470e-4e25-9ea4-c87482922324','Y',110,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:18:59 PM IST
|
||||||
|
INSERT INTO AD_Field (AD_Field_ID,Name,Description,Help,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan) VALUES (206542,'Active','The record is active in the system','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 reports.
|
||||||
|
There are two reasons for de-activating and not deleting records:
|
||||||
|
(1) The system requires the record for audit purposes.
|
||||||
|
(2) The record is referenced by other records. E.g., you cannot delete a Business Partner, if there are invoices for this partner record existing. You de-activate the Business Partner and prevent that this record is used for future entries.',200283,213064,'Y',1,130,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2020-10-27 13:18:57','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:18:57','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','05e112f8-121f-4364-9ec2-e43730bf8f13','Y',120,2,2)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206532
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=60, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206536
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=70, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206533
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=80, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=90, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206539
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=100, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206538
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=110, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206540
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=130, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=5, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206537
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:21:09 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-27 13:21:09','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:22:27 PM IST
|
||||||
|
UPDATE AD_Tab SET IsReadOnly='Y', IsInsertRecord='N',Updated=TO_TIMESTAMP('2020-10-27 13:22:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200282
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:25:50 PM IST
|
||||||
|
INSERT INTO AD_Menu (AD_Menu_ID,Name,Description,"action",AD_Window_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsSummary,IsSOTrx,IsReadOnly,EntityType,IsCentrallyMaintained,AD_Menu_UU) VALUES (200175,'Menu user favourites','User favourites menu','W',200111,0,0,'Y',TO_TIMESTAMP('2020-10-27 13:25:49','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2020-10-27 13:25:49','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','N','D','Y','9b0c1e47-4fae-4cbd-80d5-66119ca4ed94')
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:25:50 PM IST
|
||||||
|
INSERT INTO AD_TreeNodeMM (AD_Client_ID,AD_Org_ID, IsActive,Created,CreatedBy,Updated,UpdatedBy, AD_Tree_ID, Node_ID, Parent_ID, SeqNo, AD_TreeNodeMM_UU) SELECT t.AD_Client_ID, 0, 'Y', statement_timestamp(), 100, statement_timestamp(), 100,t.AD_Tree_ID, 200175, 0, 999, Generate_UUID() FROM AD_Tree t WHERE t.AD_Client_ID=0 AND t.IsActive='Y' AND t.IsAllNodes='Y' AND t.TreeType='MM' AND NOT EXISTS (SELECT * FROM AD_TreeNodeMM e WHERE e.AD_Tree_ID=t.AD_Tree_ID AND Node_ID=200175)
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=0, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=218
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=1, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=153
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=2, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=263
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=3, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=166
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=4, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=203
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=5, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=53242
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=6, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=236
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=7, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=183
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=8, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=160
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=9, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=278
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=10, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=345
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=11, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=53296
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=12, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=53014
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=0, SeqNo=13, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=53108
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=0, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=334
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=1, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=498
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=2, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=224
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=3, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=145
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=4, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=336
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=5, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=341
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=6, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=144
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=7, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=170
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=8, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=465
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=9, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=200137
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=10, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=200175
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=11, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=101
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=12, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=294
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=13, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=395
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=14, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=296
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=15, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=221
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=16, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=233
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=17, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=290
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=18, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=109
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=19, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=200093
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 27, 2020, 1:26:37 PM IST
|
||||||
|
UPDATE AD_TreeNodeMM SET Parent_ID=161, SeqNo=20, Updated=statement_timestamp() WHERE AD_Tree_ID=10 AND Node_ID=50008
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:08:25 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=50, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-28 17:08:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:08:25 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='N', SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-28 17:08:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=40, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=4, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='Y', SeqNo=80, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=2, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:09:44 PM IST
|
||||||
|
UPDATE AD_Field SET IsDisplayed='N', SeqNo=0, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=1, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2020-10-28 17:09:44','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:10:22 PM IST
|
||||||
|
UPDATE AD_Tab SET Name='Favorite tree node',Updated=TO_TIMESTAMP('2020-10-28 17:10:22','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200283
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:11:56 PM IST
|
||||||
|
UPDATE AD_Tab SET Name='User favourite tree', Description='In this tab, you can see to manage user and role wise favourite tree references',Updated=TO_TIMESTAMP('2020-10-28 17:11:56','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Tab_ID=200282
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=0,IsDisplayedGrid='N', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206526
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=10,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206522
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=20,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206523
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=30,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206525
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=50,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206524
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:17 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=60,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206528
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=0,IsDisplayedGrid='N', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206535
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=10,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206529
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=20,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206530
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=30,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206531
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=40,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206534
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=50,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206532
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=60,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206533
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=70,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206536
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=80,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206537
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=90,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206538
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=100,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206539
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=110,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206540
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=120,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206541
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 28, 2020, 5:20:55 PM IST
|
||||||
|
UPDATE AD_Field SET SeqNoGrid=130,IsDisplayedGrid='Y', Updated=statement_timestamp(), UpdatedBy=100 WHERE AD_Field_ID=206542
|
||||||
|
;
|
||||||
|
|
||||||
|
-- IDEMPIERE-3340 InActive existing AD_TreeBar table
|
||||||
|
-- Oct 30, 2020, 11:37:24 AM IST
|
||||||
|
UPDATE AD_Table SET IsActive='N',Updated=TO_TIMESTAMP('2020-10-30 11:37:24','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Table_ID=456
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 30, 2020, 11:37:39 AM IST
|
||||||
|
UPDATE AD_Window SET IsActive='N',Updated=TO_TIMESTAMP('2020-10-30 11:37:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Window_ID=200083
|
||||||
|
;
|
||||||
|
|
||||||
|
-- Oct 30, 2020, 11:37:39 AM IST
|
||||||
|
UPDATE AD_Menu SET Name='Menu favourites', Description=NULL, IsActive='N',Updated=TO_TIMESTAMP('2020-10-30 11:37:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Menu_ID=200137
|
||||||
|
;
|
||||||
|
|
||||||
|
SELECT register_migration_script('202010281900_IDEMPIERE-3340.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,32 @@
|
||||||
|
|
||||||
|
-- Postgresql Data Migration from AD_TreeBar to AD_Tree_Favorite and AD_Tree_Favorite_Node table
|
||||||
|
-- Insert TreeBar data to Tree Favorite
|
||||||
|
INSERT INTO AD_Tree_Favorite
|
||||||
|
(AD_Tree_Favorite_ID,
|
||||||
|
AD_Client_ID, AD_Org_ID, AD_User_ID,
|
||||||
|
AD_Role_ID,
|
||||||
|
Created, CreatedBy, Updated, UpdatedBy, AD_Tree_Favorite_UU)
|
||||||
|
|
||||||
|
SELECT (row_number() OVER (ORDER BY AD_Client_ID, AD_User_ID)) + (SELECT CASE WHEN COALESCE(MAX(AD_Tree_Favorite_ID),0)> 0 THEN COALESCE(MAX(AD_Tree_Favorite_ID),0) ELSE 1000000 END FROM AD_Tree_Favorite),
|
||||||
|
AD_Client_ID, 0, AD_User_ID,
|
||||||
|
(SELECT AD_Role_ID FROM AD_User_Roles WHERE AD_Client_ID = tb.AD_Client_ID AND AD_User_ID = tb.AD_User_ID ORDER BY Created FETCH FIRST 1 ROW ONLY),
|
||||||
|
NOW(), 100, NOW(), 100, Generate_UUID()
|
||||||
|
FROM AD_TreeBar tb
|
||||||
|
GROUP BY AD_Client_ID, AD_User_ID;
|
||||||
|
|
||||||
|
|
||||||
|
-- Insert TreeBar data to Tree Favorite Node
|
||||||
|
INSERT INTO AD_Tree_Favorite_Node
|
||||||
|
(AD_Client_ID, AD_Menu_ID, AD_Org_ID,
|
||||||
|
AD_Tree_Favorite_ID,
|
||||||
|
AD_Tree_Favorite_Node_ID,
|
||||||
|
AD_Tree_Favorite_Node_UU, Created, CreatedBy, IsSummary, SeqNo, Updated, UpdatedBy, IsFavourite, LoginOpenSeqNo)
|
||||||
|
|
||||||
|
SELECT AD_Client_ID, Node_ID, AD_Org_ID,
|
||||||
|
(SELECT MAX(AD_Tree_Favorite_ID) FROM AD_Tree_Favorite WHERE AD_Client_ID = tb.AD_Client_ID AND AD_User_ID=tb.AD_User_ID),
|
||||||
|
(row_number() OVER (ORDER BY AD_Client_ID, AD_User_ID)) + (SELECT CASE WHEN COALESCE(MAX(AD_Tree_Favorite_Node_ID),0)> 0 THEN COALESCE(MAX(AD_Tree_Favorite_Node_ID),0) ELSE 1000000 END FROM AD_Tree_Favorite_Node),
|
||||||
|
Generate_UUID(), NOW(), 100, 'N', 0, NOW(), 100, 'Y',LoginOpenSeqNo
|
||||||
|
FROM AD_TreeBar tb;
|
||||||
|
|
||||||
|
SELECT register_migration_script('202010291500_IDEMPIERE-3340_MigrateData.sql') FROM dual
|
||||||
|
;
|
|
@ -0,0 +1,157 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Product: iDempiere ERP & CRM Smart Business Solution *
|
||||||
|
* Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
|
||||||
|
* This program is free software, you can redistribute it and/or modify it *
|
||||||
|
* under the terms version 2 of the GNU General Public License as published *
|
||||||
|
* by the Free Software Foundation. This program is distributed in the hope *
|
||||||
|
* that it will be useful, but WITHOUT ANY WARRANTY, without even the implied *
|
||||||
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||||
|
* See the GNU General Public License for more details. *
|
||||||
|
* You should have received a copy of the GNU General Public License along *
|
||||||
|
* with this program, if not, write to the Free Software Foundation, Inc., *
|
||||||
|
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
|
||||||
|
* For the text or an alternative of this public license, you may reach us *
|
||||||
|
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
|
||||||
|
* or via info@compiere.org or http://www.compiere.org/license.html *
|
||||||
|
*****************************************************************************/
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import org.compiere.util.KeyNamePair;
|
||||||
|
|
||||||
|
/** Generated Interface for AD_Tree_Favorite
|
||||||
|
* @author iDempiere (generated)
|
||||||
|
* @version Release 7.1
|
||||||
|
*/
|
||||||
|
public interface I_AD_Tree_Favorite
|
||||||
|
{
|
||||||
|
|
||||||
|
/** TableName=AD_Tree_Favorite */
|
||||||
|
public static final String Table_Name = "AD_Tree_Favorite";
|
||||||
|
|
||||||
|
/** AD_Table_ID=200220 */
|
||||||
|
public static final int Table_ID = 200220;
|
||||||
|
|
||||||
|
KeyNamePair Model = new KeyNamePair(Table_ID, Table_Name);
|
||||||
|
|
||||||
|
/** AccessLevel = 3 - Client - Org
|
||||||
|
*/
|
||||||
|
BigDecimal accessLevel = BigDecimal.valueOf(3);
|
||||||
|
|
||||||
|
/** Load Meta Data */
|
||||||
|
|
||||||
|
/** Column name AD_Client_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID";
|
||||||
|
|
||||||
|
/** Get Client.
|
||||||
|
* Client/Tenant for this installation.
|
||||||
|
*/
|
||||||
|
public int getAD_Client_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Org_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Org_ID = "AD_Org_ID";
|
||||||
|
|
||||||
|
/** Set Organization.
|
||||||
|
* Organizational entity within client
|
||||||
|
*/
|
||||||
|
public void setAD_Org_ID (int AD_Org_ID);
|
||||||
|
|
||||||
|
/** Get Organization.
|
||||||
|
* Organizational entity within client
|
||||||
|
*/
|
||||||
|
public int getAD_Org_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Role_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Role_ID = "AD_Role_ID";
|
||||||
|
|
||||||
|
/** Set Role.
|
||||||
|
* Responsibility Role
|
||||||
|
*/
|
||||||
|
public void setAD_Role_ID (int AD_Role_ID);
|
||||||
|
|
||||||
|
/** Get Role.
|
||||||
|
* Responsibility Role
|
||||||
|
*/
|
||||||
|
public int getAD_Role_ID();
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Role getAD_Role() throws RuntimeException;
|
||||||
|
|
||||||
|
/** Column name AD_Tree_Favorite_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Tree_Favorite_ID = "AD_Tree_Favorite_ID";
|
||||||
|
|
||||||
|
/** Set Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_ID (int AD_Tree_Favorite_ID);
|
||||||
|
|
||||||
|
/** Get Favorite Tree */
|
||||||
|
public int getAD_Tree_Favorite_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Tree_Favorite_UU */
|
||||||
|
public static final String COLUMNNAME_AD_Tree_Favorite_UU = "AD_Tree_Favorite_UU";
|
||||||
|
|
||||||
|
/** Set Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_UU (String AD_Tree_Favorite_UU);
|
||||||
|
|
||||||
|
/** Get Favorite Tree */
|
||||||
|
public String getAD_Tree_Favorite_UU();
|
||||||
|
|
||||||
|
/** Column name AD_User_ID */
|
||||||
|
public static final String COLUMNNAME_AD_User_ID = "AD_User_ID";
|
||||||
|
|
||||||
|
/** Set User/Contact.
|
||||||
|
* User within the system - Internal or Business Partner Contact
|
||||||
|
*/
|
||||||
|
public void setAD_User_ID (int AD_User_ID);
|
||||||
|
|
||||||
|
/** Get User/Contact.
|
||||||
|
* User within the system - Internal or Business Partner Contact
|
||||||
|
*/
|
||||||
|
public int getAD_User_ID();
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_User getAD_User() throws RuntimeException;
|
||||||
|
|
||||||
|
/** Column name Created */
|
||||||
|
public static final String COLUMNNAME_Created = "Created";
|
||||||
|
|
||||||
|
/** Get Created.
|
||||||
|
* Date this record was created
|
||||||
|
*/
|
||||||
|
public Timestamp getCreated();
|
||||||
|
|
||||||
|
/** Column name CreatedBy */
|
||||||
|
public static final String COLUMNNAME_CreatedBy = "CreatedBy";
|
||||||
|
|
||||||
|
/** Get Created By.
|
||||||
|
* User who created this records
|
||||||
|
*/
|
||||||
|
public int getCreatedBy();
|
||||||
|
|
||||||
|
/** Column name IsActive */
|
||||||
|
public static final String COLUMNNAME_IsActive = "IsActive";
|
||||||
|
|
||||||
|
/** Set Active.
|
||||||
|
* The record is active in the system
|
||||||
|
*/
|
||||||
|
public void setIsActive (boolean IsActive);
|
||||||
|
|
||||||
|
/** Get Active.
|
||||||
|
* The record is active in the system
|
||||||
|
*/
|
||||||
|
public boolean isActive();
|
||||||
|
|
||||||
|
/** Column name Updated */
|
||||||
|
public static final String COLUMNNAME_Updated = "Updated";
|
||||||
|
|
||||||
|
/** Get Updated.
|
||||||
|
* Date this record was updated
|
||||||
|
*/
|
||||||
|
public Timestamp getUpdated();
|
||||||
|
|
||||||
|
/** Column name UpdatedBy */
|
||||||
|
public static final String COLUMNNAME_UpdatedBy = "UpdatedBy";
|
||||||
|
|
||||||
|
/** Get Updated By.
|
||||||
|
* User who updated this records
|
||||||
|
*/
|
||||||
|
public int getUpdatedBy();
|
||||||
|
}
|
|
@ -0,0 +1,248 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Product: iDempiere ERP & CRM Smart Business Solution *
|
||||||
|
* Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
|
||||||
|
* This program is free software, you can redistribute it and/or modify it *
|
||||||
|
* under the terms version 2 of the GNU General Public License as published *
|
||||||
|
* by the Free Software Foundation. This program is distributed in the hope *
|
||||||
|
* that it will be useful, but WITHOUT ANY WARRANTY, without even the implied *
|
||||||
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||||
|
* See the GNU General Public License for more details. *
|
||||||
|
* You should have received a copy of the GNU General Public License along *
|
||||||
|
* with this program, if not, write to the Free Software Foundation, Inc., *
|
||||||
|
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
|
||||||
|
* For the text or an alternative of this public license, you may reach us *
|
||||||
|
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
|
||||||
|
* or via info@compiere.org or http://www.compiere.org/license.html *
|
||||||
|
*****************************************************************************/
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.sql.Timestamp;
|
||||||
|
import org.compiere.util.KeyNamePair;
|
||||||
|
|
||||||
|
/** Generated Interface for AD_Tree_Favorite_Node
|
||||||
|
* @author iDempiere (generated)
|
||||||
|
* @version Release 7.1
|
||||||
|
*/
|
||||||
|
public interface I_AD_Tree_Favorite_Node
|
||||||
|
{
|
||||||
|
|
||||||
|
/** TableName=AD_Tree_Favorite_Node */
|
||||||
|
public static final String Table_Name = "AD_Tree_Favorite_Node";
|
||||||
|
|
||||||
|
/** AD_Table_ID=200221 */
|
||||||
|
public static final int Table_ID = 200221;
|
||||||
|
|
||||||
|
KeyNamePair Model = new KeyNamePair(Table_ID, Table_Name);
|
||||||
|
|
||||||
|
/** AccessLevel = 3 - Client - Org
|
||||||
|
*/
|
||||||
|
BigDecimal accessLevel = BigDecimal.valueOf(3);
|
||||||
|
|
||||||
|
/** Load Meta Data */
|
||||||
|
|
||||||
|
/** Column name AD_Client_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Client_ID = "AD_Client_ID";
|
||||||
|
|
||||||
|
/** Get Client.
|
||||||
|
* Client/Tenant for this installation.
|
||||||
|
*/
|
||||||
|
public int getAD_Client_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Menu_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Menu_ID = "AD_Menu_ID";
|
||||||
|
|
||||||
|
/** Set Menu.
|
||||||
|
* Identifies a Menu
|
||||||
|
*/
|
||||||
|
public void setAD_Menu_ID (int AD_Menu_ID);
|
||||||
|
|
||||||
|
/** Get Menu.
|
||||||
|
* Identifies a Menu
|
||||||
|
*/
|
||||||
|
public int getAD_Menu_ID();
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Menu getAD_Menu() throws RuntimeException;
|
||||||
|
|
||||||
|
/** Column name AD_Org_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Org_ID = "AD_Org_ID";
|
||||||
|
|
||||||
|
/** Set Organization.
|
||||||
|
* Organizational entity within client
|
||||||
|
*/
|
||||||
|
public void setAD_Org_ID (int AD_Org_ID);
|
||||||
|
|
||||||
|
/** Get Organization.
|
||||||
|
* Organizational entity within client
|
||||||
|
*/
|
||||||
|
public int getAD_Org_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Tree_Favorite_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Tree_Favorite_ID = "AD_Tree_Favorite_ID";
|
||||||
|
|
||||||
|
/** Set Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_ID (int AD_Tree_Favorite_ID);
|
||||||
|
|
||||||
|
/** Get Favorite Tree */
|
||||||
|
public int getAD_Tree_Favorite_ID();
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Tree_Favorite getAD_Tree_Favorite() throws RuntimeException;
|
||||||
|
|
||||||
|
/** Column name AD_Tree_Favorite_Node_ID */
|
||||||
|
public static final String COLUMNNAME_AD_Tree_Favorite_Node_ID = "AD_Tree_Favorite_Node_ID";
|
||||||
|
|
||||||
|
/** Set Favorite Node Tree */
|
||||||
|
public void setAD_Tree_Favorite_Node_ID (int AD_Tree_Favorite_Node_ID);
|
||||||
|
|
||||||
|
/** Get Favorite Node Tree */
|
||||||
|
public int getAD_Tree_Favorite_Node_ID();
|
||||||
|
|
||||||
|
/** Column name AD_Tree_Favorite_Node_UU */
|
||||||
|
public static final String COLUMNNAME_AD_Tree_Favorite_Node_UU = "AD_Tree_Favorite_Node_UU";
|
||||||
|
|
||||||
|
/** Set Favorite Node Tree */
|
||||||
|
public void setAD_Tree_Favorite_Node_UU (String AD_Tree_Favorite_Node_UU);
|
||||||
|
|
||||||
|
/** Get Favorite Node Tree */
|
||||||
|
public String getAD_Tree_Favorite_Node_UU();
|
||||||
|
|
||||||
|
/** Column name Created */
|
||||||
|
public static final String COLUMNNAME_Created = "Created";
|
||||||
|
|
||||||
|
/** Get Created.
|
||||||
|
* Date this record was created
|
||||||
|
*/
|
||||||
|
public Timestamp getCreated();
|
||||||
|
|
||||||
|
/** Column name CreatedBy */
|
||||||
|
public static final String COLUMNNAME_CreatedBy = "CreatedBy";
|
||||||
|
|
||||||
|
/** Get Created By.
|
||||||
|
* User who created this records
|
||||||
|
*/
|
||||||
|
public int getCreatedBy();
|
||||||
|
|
||||||
|
/** Column name IsActive */
|
||||||
|
public static final String COLUMNNAME_IsActive = "IsActive";
|
||||||
|
|
||||||
|
/** Set Active.
|
||||||
|
* The record is active in the system
|
||||||
|
*/
|
||||||
|
public void setIsActive (boolean IsActive);
|
||||||
|
|
||||||
|
/** Get Active.
|
||||||
|
* The record is active in the system
|
||||||
|
*/
|
||||||
|
public boolean isActive();
|
||||||
|
|
||||||
|
/** Column name IsCollapsible */
|
||||||
|
public static final String COLUMNNAME_IsCollapsible = "IsCollapsible";
|
||||||
|
|
||||||
|
/** Set Collapsible.
|
||||||
|
* Flag to indicate the state of the dashboard panel
|
||||||
|
*/
|
||||||
|
public void setIsCollapsible (boolean IsCollapsible);
|
||||||
|
|
||||||
|
/** Get Collapsible.
|
||||||
|
* Flag to indicate the state of the dashboard panel
|
||||||
|
*/
|
||||||
|
public boolean isCollapsible();
|
||||||
|
|
||||||
|
/** Column name IsFavourite */
|
||||||
|
public static final String COLUMNNAME_IsFavourite = "IsFavourite";
|
||||||
|
|
||||||
|
/** Set Favourite.
|
||||||
|
* This record is a favourite
|
||||||
|
*/
|
||||||
|
public void setIsFavourite (boolean IsFavourite);
|
||||||
|
|
||||||
|
/** Get Favourite.
|
||||||
|
* This record is a favourite
|
||||||
|
*/
|
||||||
|
public boolean isFavourite();
|
||||||
|
|
||||||
|
/** Column name IsSummary */
|
||||||
|
public static final String COLUMNNAME_IsSummary = "IsSummary";
|
||||||
|
|
||||||
|
/** Set Summary Level.
|
||||||
|
* This is a summary entity
|
||||||
|
*/
|
||||||
|
public void setIsSummary (boolean IsSummary);
|
||||||
|
|
||||||
|
/** Get Summary Level.
|
||||||
|
* This is a summary entity
|
||||||
|
*/
|
||||||
|
public boolean isSummary();
|
||||||
|
|
||||||
|
/** Column name LoginOpenSeqNo */
|
||||||
|
public static final String COLUMNNAME_LoginOpenSeqNo = "LoginOpenSeqNo";
|
||||||
|
|
||||||
|
/** Set Login automatic open sequence.
|
||||||
|
* Determine the order items will be automatically opened when user logs in
|
||||||
|
*/
|
||||||
|
public void setLoginOpenSeqNo (int LoginOpenSeqNo);
|
||||||
|
|
||||||
|
/** Get Login automatic open sequence.
|
||||||
|
* Determine the order items will be automatically opened when user logs in
|
||||||
|
*/
|
||||||
|
public int getLoginOpenSeqNo();
|
||||||
|
|
||||||
|
/** Column name Name */
|
||||||
|
public static final String COLUMNNAME_Name = "Name";
|
||||||
|
|
||||||
|
/** Set Name.
|
||||||
|
* Alphanumeric identifier of the entity
|
||||||
|
*/
|
||||||
|
public void setName (String Name);
|
||||||
|
|
||||||
|
/** Get Name.
|
||||||
|
* Alphanumeric identifier of the entity
|
||||||
|
*/
|
||||||
|
public String getName();
|
||||||
|
|
||||||
|
/** Column name Parent_ID */
|
||||||
|
public static final String COLUMNNAME_Parent_ID = "Parent_ID";
|
||||||
|
|
||||||
|
/** Set Parent.
|
||||||
|
* Parent of Entity
|
||||||
|
*/
|
||||||
|
public void setParent_ID (int Parent_ID);
|
||||||
|
|
||||||
|
/** Get Parent.
|
||||||
|
* Parent of Entity
|
||||||
|
*/
|
||||||
|
public int getParent_ID();
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Tree_Favorite_Node getParent() throws RuntimeException;
|
||||||
|
|
||||||
|
/** Column name SeqNo */
|
||||||
|
public static final String COLUMNNAME_SeqNo = "SeqNo";
|
||||||
|
|
||||||
|
/** Set Sequence.
|
||||||
|
* Method of ordering records;
|
||||||
|
lowest number comes first
|
||||||
|
*/
|
||||||
|
public void setSeqNo (int SeqNo);
|
||||||
|
|
||||||
|
/** Get Sequence.
|
||||||
|
* Method of ordering records;
|
||||||
|
lowest number comes first
|
||||||
|
*/
|
||||||
|
public int getSeqNo();
|
||||||
|
|
||||||
|
/** Column name Updated */
|
||||||
|
public static final String COLUMNNAME_Updated = "Updated";
|
||||||
|
|
||||||
|
/** Get Updated.
|
||||||
|
* Date this record was updated
|
||||||
|
*/
|
||||||
|
public Timestamp getUpdated();
|
||||||
|
|
||||||
|
/** Column name UpdatedBy */
|
||||||
|
public static final String COLUMNNAME_UpdatedBy = "UpdatedBy";
|
||||||
|
|
||||||
|
/** Get Updated By.
|
||||||
|
* User who updated this records
|
||||||
|
*/
|
||||||
|
public int getUpdatedBy();
|
||||||
|
}
|
|
@ -22,8 +22,11 @@ import java.sql.SQLException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
import org.compiere.util.CCache;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Menu Model
|
* Menu Model
|
||||||
|
@ -42,6 +45,26 @@ public class MMenu extends X_AD_Menu
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = -6671861281736697100L;
|
private static final long serialVersionUID = -6671861281736697100L;
|
||||||
|
|
||||||
|
/** Cache for MMenu */
|
||||||
|
private static CCache<Integer, MMenu> cache_menu = new CCache<Integer, MMenu>(MMenu.Table_Name, "CacheMenu", 50);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Menu object
|
||||||
|
*
|
||||||
|
* @param AD_Menu_ID
|
||||||
|
* @return {@link MMenu}
|
||||||
|
*/
|
||||||
|
public static MMenu get(int AD_Menu_ID)
|
||||||
|
{
|
||||||
|
if (cache_menu.containsKey(AD_Menu_ID))
|
||||||
|
return cache_menu.get(AD_Menu_ID);
|
||||||
|
|
||||||
|
MMenu menu = (MMenu) MTable.get(Env.getCtx(), MMenu.Table_ID).getPO(AD_Menu_ID, null);
|
||||||
|
cache_menu.put(AD_Menu_ID, menu);
|
||||||
|
|
||||||
|
return menu;
|
||||||
|
} // get
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get menues with where clause
|
* Get menues with where clause
|
||||||
* @param ctx context
|
* @param ctx context
|
||||||
|
|
|
@ -20,6 +20,7 @@ import java.sql.ResultSet;
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
import org.compiere.util.CCache;
|
||||||
import org.compiere.util.CLogger;
|
import org.compiere.util.CLogger;
|
||||||
import org.compiere.util.DB;
|
import org.compiere.util.DB;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
|
@ -31,6 +32,10 @@ import org.compiere.util.Env;
|
||||||
*/
|
*/
|
||||||
public class MToolBarButtonRestrict extends X_AD_ToolBarButtonRestrict
|
public class MToolBarButtonRestrict extends X_AD_ToolBarButtonRestrict
|
||||||
{
|
{
|
||||||
|
|
||||||
|
/** Cache for New toolbar button restriction */
|
||||||
|
private static CCache<String, Boolean> cache_toolbarBtnRestriction = new CCache<String, Boolean>("NewToolbarButtonRestricted", 50);
|
||||||
|
|
||||||
private static final String GET_OF_WINDOW_SQL = "SELECT AD_ToolBarButton_ID FROM AD_ToolBarButtonRestrict WHERE IsActive = 'Y'"
|
private static final String GET_OF_WINDOW_SQL = "SELECT AD_ToolBarButton_ID FROM AD_ToolBarButtonRestrict WHERE IsActive = 'Y'"
|
||||||
+ " AND AD_Client_ID IN (0, ?)"
|
+ " AND AD_Client_ID IN (0, ?)"
|
||||||
+ " AND (AD_Role_ID IS NULL OR AD_Role_ID = ?)"
|
+ " AND (AD_Role_ID IS NULL OR AD_Role_ID = ?)"
|
||||||
|
@ -61,6 +66,18 @@ public class MToolBarButtonRestrict extends X_AD_ToolBarButtonRestrict
|
||||||
+ " AND AD_Tab_ID=?"
|
+ " AND AD_Tab_ID=?"
|
||||||
+ " AND AD_ToolBarButton_ID IN"
|
+ " AND AD_ToolBarButton_ID IN"
|
||||||
+ " (SELECT AD_ToolBarButton_ID FROM AD_ToolBarButton WHERE AD_Process_ID IS NULL AND IsActive='Y')";
|
+ " (SELECT AD_ToolBarButton_ID FROM AD_ToolBarButton WHERE AD_Process_ID IS NULL AND IsActive='Y')";
|
||||||
|
|
||||||
|
// Toolbar button access restriction
|
||||||
|
public static final String SQL_IS_TOOLBAR_BTN_EXCLUDED = "SELECT tbr.IsExclude FROM AD_ToolBarButton tb "
|
||||||
|
+ " INNER JOIN AD_ToolBarButtonRestrict tbr ON "
|
||||||
|
+ " ( tbr.AD_ToolBarButton_ID=tb.AD_ToolBarButton_ID AND tbr.AD_Client_ID IN (0,?) AND tbr.IsActive='Y' AND "
|
||||||
|
+ " tbr.Action='W' AND (tbr.AD_Role_ID IS NULL OR tbr.AD_Role_ID=?) AND (tbr.AD_Window_ID IS NULL OR tbr.AD_Window_ID=?)) "
|
||||||
|
+ " LEFT JOIN AD_Tab t ON ( t.AD_Tab_ID=tbr.AD_Tab_ID AND t.IsActive='Y' AND t.AD_Window_ID=? AND ((t.TabLevel=0 AND 0=?) OR t.AD_Tab_ID=?)) "
|
||||||
|
+ " WHERE tb.IsActive='Y' AND tb.Action='W' AND tb.Name=? AND tb.AD_Tab_ID IS NULL AND (tbr.AD_Tab_ID IS NULL OR t.AD_Tab_ID IS NOT NULL) "
|
||||||
|
+ " ORDER BY tbr.AD_Client_ID DESC, tbr.AD_Window_ID, tbr.AD_Tab_ID ";
|
||||||
|
|
||||||
|
public static final String TOOLBAR_BTN_WINDOW_NEW = "Window - New";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
@ -168,4 +185,55 @@ public class MToolBarButtonRestrict extends X_AD_ToolBarButtonRestrict
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
} // toString
|
} // toString
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check Window access for ReadWrite & New Toolbar button
|
||||||
|
*
|
||||||
|
* @param windowID - AD_Window_ID
|
||||||
|
* @return True if Toolbar button is restricted
|
||||||
|
*/
|
||||||
|
public static boolean isNewButtonRestricted(int windowID)
|
||||||
|
{
|
||||||
|
return isNewButtonRestricted(windowID, 0);
|
||||||
|
} // isNewButtonRestricted
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check Window access for ReadWrite & New Toolbar button
|
||||||
|
*
|
||||||
|
* @param windowID - AD_Window_ID
|
||||||
|
* @param tabID - AD_Tab_ID
|
||||||
|
* @return True if Toolbar button is restricted
|
||||||
|
*/
|
||||||
|
public static boolean isNewButtonRestricted(int windowID, int tabID)
|
||||||
|
{
|
||||||
|
boolean isReadWrite = MRole.getDefault().getWindowAccess(windowID);
|
||||||
|
if (!isReadWrite)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return isToolbarButtonRestricted(windowID, tabID, TOOLBAR_BTN_WINDOW_NEW);
|
||||||
|
} // isNewButtonRestricted
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check toolbar button restriction
|
||||||
|
*
|
||||||
|
* @param windowID - AD_Window_ID
|
||||||
|
* @param tabID - AD_Tab_ID
|
||||||
|
* @param btnName - Toolbar button name
|
||||||
|
* @return True if Toolbar button is restricted
|
||||||
|
*/
|
||||||
|
public static boolean isToolbarButtonRestricted(int windowID, int tabID, String btnName)
|
||||||
|
{
|
||||||
|
int clientID = Env.getAD_Client_ID(Env.getCtx());
|
||||||
|
int roleID = MRole.getDefault().getAD_Role_ID();
|
||||||
|
|
||||||
|
String key = clientID + "_" + roleID + "_" + windowID + "_" + tabID + "_" + btnName;
|
||||||
|
if (cache_toolbarBtnRestriction.containsKey(key))
|
||||||
|
return cache_toolbarBtnRestriction.get(key);
|
||||||
|
|
||||||
|
String isExclude = DB.getSQLValueString(null, SQL_IS_TOOLBAR_BTN_EXCLUDED, clientID, roleID, windowID, windowID, tabID, tabID, btnName);
|
||||||
|
boolean isRestricted = isExclude != null && isExclude.equals("Y");
|
||||||
|
cache_toolbarBtnRestriction.put(key, isRestricted);
|
||||||
|
|
||||||
|
return isRestricted;
|
||||||
|
} // isToolbarButtonRestricted
|
||||||
|
|
||||||
} // MToolBarButtonRestrict
|
} // MToolBarButtonRestrict
|
||||||
|
|
|
@ -240,14 +240,7 @@ public class MTree extends MTree_Base
|
||||||
StringBuilder sql = new StringBuilder();
|
StringBuilder sql = new StringBuilder();
|
||||||
if (getTreeType().equals(TREETYPE_Menu)) // specific sql, need to load TreeBar IDEMPIERE 329 - nmicoud
|
if (getTreeType().equals(TREETYPE_Menu)) // specific sql, need to load TreeBar IDEMPIERE 329 - nmicoud
|
||||||
{
|
{
|
||||||
sql = new StringBuilder("SELECT "
|
sql = new StringBuilder("SELECT tn.Node_ID,tn.Parent_ID,tn.SeqNo,'N' FROM ").append(getNodeTableName()).append(" tn WHERE tn.AD_Tree_ID=?");
|
||||||
+ "tn.Node_ID,tn.Parent_ID,tn.SeqNo,tb.IsActive "
|
|
||||||
+ "FROM ").append(getNodeTableName()).append(" tn"
|
|
||||||
+ " LEFT OUTER JOIN AD_TreeBar tb ON (tn.AD_Tree_ID=tb.AD_Tree_ID"
|
|
||||||
+ " AND tn.Node_ID=tb.Node_ID AND tb.IsFavourite = 'Y'"
|
|
||||||
+ (AD_User_ID != -1 ? " AND tb.AD_User_ID=? ": "") // #1 (conditional)
|
|
||||||
+ ") "
|
|
||||||
+ "WHERE tn.AD_Tree_ID=?"); // #2
|
|
||||||
if (!m_editable)
|
if (!m_editable)
|
||||||
sql.append(" AND tn.IsActive='Y'");
|
sql.append(" AND tn.IsActive='Y'");
|
||||||
sql.append(" ORDER BY COALESCE(tn.Parent_ID, -1), tn.SeqNo");
|
sql.append(" ORDER BY COALESCE(tn.Parent_ID, -1), tn.SeqNo");
|
||||||
|
@ -284,10 +277,7 @@ public class MTree extends MTree_Base
|
||||||
getNodeDetails();
|
getNodeDetails();
|
||||||
//
|
//
|
||||||
pstmt = DB.prepareStatement(sql.toString(), get_TrxName());
|
pstmt = DB.prepareStatement(sql.toString(), get_TrxName());
|
||||||
int idx = 1;
|
pstmt.setInt(1, getAD_Tree_ID());
|
||||||
if (AD_User_ID != -1 && getTreeType().equals(TREETYPE_Menu)) // IDEMPIERE 329 - nmicoud
|
|
||||||
pstmt.setInt(idx++, AD_User_ID);
|
|
||||||
pstmt.setInt(idx++, getAD_Tree_ID());
|
|
||||||
// Get Tree & Bar
|
// Get Tree & Bar
|
||||||
rs = pstmt.executeQuery();
|
rs = pstmt.executeQuery();
|
||||||
m_root = new MTreeNode (0, 0, getName(), getDescription(), 0, true, null, false, null);
|
m_root = new MTreeNode (0, 0, getName(), getDescription(), 0, true, null, false, null);
|
||||||
|
|
|
@ -0,0 +1,244 @@
|
||||||
|
/******************************************************************************
|
||||||
|
Copyright (C) 2017 Adaxa Pty Ltd. All Rights Reserved.
|
||||||
|
This program is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms version 2 of the GNU General Public License as published
|
||||||
|
by the Free Software Foundation. This program is distributed in the hope
|
||||||
|
that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.sql.PreparedStatement;
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.sql.SQLException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Properties;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
import org.adempiere.exceptions.AdempiereException;
|
||||||
|
import org.compiere.util.CCache;
|
||||||
|
import org.compiere.util.DB;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Favorite Tree Model
|
||||||
|
*
|
||||||
|
* @author Logilite Technologies
|
||||||
|
* @since June 20, 2017
|
||||||
|
*/
|
||||||
|
public class MTreeFavorite extends X_AD_Tree_Favorite
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -1781192037651191816L;
|
||||||
|
|
||||||
|
public static final String SQL_GET_TREE_FAVORITE_ID = "SELECT AD_Tree_Favorite_ID FROM AD_Tree_Favorite WHERE IsActive = 'Y' AND AD_Client_ID = ? AND AD_Role_ID = ? AND AD_User_ID = ?";
|
||||||
|
|
||||||
|
public static final String SQL_GET_TREE_FAVORITE_NODE = "SELECT AD_Tree_Favorite_Node_ID, Parent_ID, SeqNo, Name, IsSummary, AD_Menu_ID, IsCollapsible, IsFavourite "
|
||||||
|
+ " FROM AD_Tree_Favorite_Node WHERE IsActive='Y' AND AD_Tree_Favorite_ID=? "
|
||||||
|
+ " ORDER BY COALESCE(Parent_ID, -1), SeqNo, Name ";
|
||||||
|
|
||||||
|
/** Cache for AD_Tree_Favorite_ID */
|
||||||
|
private static CCache<String, Integer> cache_TreeFavID = new CCache<String, Integer>("Cache_AD_Tree_Favorite_ID", 7 * 24 * 60);
|
||||||
|
|
||||||
|
private ArrayList<MTreeNode> m_buffer = new ArrayList<MTreeNode>();
|
||||||
|
private MTreeNode root = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct Tree Favorite Model
|
||||||
|
*
|
||||||
|
* @param ctx
|
||||||
|
* @param AD_Tree_Favorite_ID
|
||||||
|
* @param trxName
|
||||||
|
*/
|
||||||
|
public MTreeFavorite(Properties ctx, int AD_Tree_Favorite_ID, String trxName)
|
||||||
|
{
|
||||||
|
super(ctx, AD_Tree_Favorite_ID, trxName);
|
||||||
|
|
||||||
|
if (AD_Tree_Favorite_ID > 0)
|
||||||
|
{
|
||||||
|
loadNode();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public MTreeFavorite(Properties ctx, ResultSet rs, String trxName)
|
||||||
|
{
|
||||||
|
super(ctx, rs, trxName);
|
||||||
|
}
|
||||||
|
|
||||||
|
public MTreeNode getRoot()
|
||||||
|
{
|
||||||
|
return root;
|
||||||
|
} // getRoot
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Node Into Tree
|
||||||
|
*
|
||||||
|
* @param AD_Tree_Favorite_ID
|
||||||
|
*/
|
||||||
|
private void loadNode()
|
||||||
|
{
|
||||||
|
MRole role = MRole.get(getCtx(), getAD_Role_ID());
|
||||||
|
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
root = new MTreeNode(0, 0, "User Favourite Root", "User Favourite Root", 0, 0, null, true, false, false);
|
||||||
|
|
||||||
|
pstmt = DB.prepareStatement(SQL_GET_TREE_FAVORITE_NODE, get_TrxName());
|
||||||
|
pstmt.setInt(1, getAD_Tree_Favorite_ID());
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
while (rs.next())
|
||||||
|
{
|
||||||
|
int nodeID = rs.getInt(1);
|
||||||
|
int parentID = rs.getInt(2);
|
||||||
|
int seqNo = rs.getInt(3);
|
||||||
|
String name = rs.getString(4);
|
||||||
|
boolean isSummary = (rs.getString(5).equals("Y"));
|
||||||
|
boolean isCollapsible = rs.getString(7).equals("Y");
|
||||||
|
boolean isFavourite = rs.getString("IsFavourite").equals("Y");
|
||||||
|
|
||||||
|
int menuID = 0;
|
||||||
|
String img = null;
|
||||||
|
Boolean access = null;
|
||||||
|
if (!isSummary)
|
||||||
|
{
|
||||||
|
menuID = rs.getInt(6);
|
||||||
|
MMenu menu = (MMenu) MTable.get(Env.getCtx(), MMenu.Table_ID).getPO(menuID, null);
|
||||||
|
if (MMenu.ACTION_Window.equals(menu.getAction()))
|
||||||
|
access = role.getWindowAccess(menu.getAD_Window_ID());
|
||||||
|
else if (MMenu.ACTION_Process.equals(menu.getAction()) || MMenu.ACTION_Report.equals(menu.getAction()))
|
||||||
|
access = role.getProcessAccess(menu.getAD_Process_ID());
|
||||||
|
else if (MMenu.ACTION_Form.equals(menu.getAction()))
|
||||||
|
access = role.getFormAccess(menu.getAD_Form_ID());
|
||||||
|
else if (MMenu.ACTION_WorkFlow.equals(menu.getAction()))
|
||||||
|
access = role.getWorkflowAccess(menu.getAD_Workflow_ID());
|
||||||
|
else if (MMenu.ACTION_Task.equals(menu.getAction()))
|
||||||
|
access = role.getTaskAccess(menu.getAD_Task_ID());
|
||||||
|
else if (MMenu.ACTION_Info.equals(menu.getAction()))
|
||||||
|
access = role.getInfoAccess(menu.getAD_InfoWindow_ID());
|
||||||
|
|
||||||
|
if (access != null)
|
||||||
|
{
|
||||||
|
name = menu.get_Translation(MMenu.COLUMNNAME_Name);
|
||||||
|
img = menu.getAction();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((access != null && access.booleanValue()) || isSummary)
|
||||||
|
addToTree(nodeID, parentID, seqNo, name, menuID, img, isSummary, isCollapsible, isFavourite);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, SQL_GET_TREE_FAVORITE_NODE, e);
|
||||||
|
throw new AdempiereException(e);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
DB.close(rs, pstmt);
|
||||||
|
rs = null;
|
||||||
|
pstmt = null;
|
||||||
|
}
|
||||||
|
} // loadNode
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Adding Node Into Tree
|
||||||
|
*
|
||||||
|
* @param favNodeID
|
||||||
|
* @param parentID
|
||||||
|
* @param seqNo
|
||||||
|
* @param name
|
||||||
|
* @param menuID
|
||||||
|
* @param imgSrc
|
||||||
|
* @param isSummary
|
||||||
|
* @param isCollapsible
|
||||||
|
* @param isFavourite
|
||||||
|
*/
|
||||||
|
private void addToTree( int favNodeID, int parentID, int seqNo, String name, int menuID, String imgSrc, boolean isSummary, boolean isCollapsible,
|
||||||
|
boolean isFavourite)
|
||||||
|
{
|
||||||
|
MTreeNode child = new MTreeNode(favNodeID, seqNo, name, name, parentID, menuID, imgSrc, isSummary, isCollapsible, isFavourite);
|
||||||
|
|
||||||
|
MTreeNode parent = null;
|
||||||
|
if (root != null)
|
||||||
|
parent = root.findNode(parentID);
|
||||||
|
// Parent found
|
||||||
|
if (parent != null && parent.getAllowsChildren())
|
||||||
|
{
|
||||||
|
parent.add(child);
|
||||||
|
if (m_buffer.size() > 0)
|
||||||
|
checkBuffer(child);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
m_buffer.add(child);
|
||||||
|
} // addToTree
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check the buffer for nodes which have newNode as Parents
|
||||||
|
*
|
||||||
|
* @param newNode new node
|
||||||
|
*/
|
||||||
|
private void checkBuffer(MTreeNode child)
|
||||||
|
{
|
||||||
|
// Ability to add nodes
|
||||||
|
if (!child.isSummary() || !child.getAllowsChildren())
|
||||||
|
return;
|
||||||
|
for (int i = 0; i < m_buffer.size(); i++)
|
||||||
|
{
|
||||||
|
MTreeNode node = (MTreeNode) m_buffer.get(i);
|
||||||
|
if (node.getParent_ID() == child.getParent_ID())
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
child.add(node);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.severe("Adding " + node.getName() + " to " + child.getName() + ": " + e.getMessage());
|
||||||
|
}
|
||||||
|
m_buffer.remove(i);
|
||||||
|
i--;
|
||||||
|
}
|
||||||
|
else if (node.getParent_ID() == child.getNode_ID())
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
child.add(node);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.severe("Adding " + node.getName() + " to " + child.getName() + ": " + e.getMessage());
|
||||||
|
}
|
||||||
|
m_buffer.remove(i);
|
||||||
|
i--;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // checkBuffer
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Favorite Tree ID for a specific User & Role Wise
|
||||||
|
*
|
||||||
|
* @param clientID
|
||||||
|
* @param roleID
|
||||||
|
* @param userID
|
||||||
|
* @return Favorite Tree_ID
|
||||||
|
*/
|
||||||
|
public static int getFavoriteTreeID(int clientID, int roleID, int userID)
|
||||||
|
{
|
||||||
|
String key = "ID_" + clientID + "_" + roleID + "_" + userID;
|
||||||
|
if (cache_TreeFavID.containsKey(key))
|
||||||
|
return cache_TreeFavID.get(key);
|
||||||
|
|
||||||
|
Object[] params = { clientID, roleID, userID };
|
||||||
|
int id = DB.getSQLValue(null, SQL_GET_TREE_FAVORITE_ID, params);
|
||||||
|
if (id > 0)
|
||||||
|
cache_TreeFavID.put(key, id);
|
||||||
|
return id;
|
||||||
|
} // getFavoriteTreeID
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,82 @@
|
||||||
|
/******************************************************************************
|
||||||
|
Copyright (C) 2017 Adaxa Pty Ltd. All Rights Reserved.
|
||||||
|
This program is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms version 2 of the GNU General Public License as published
|
||||||
|
by the Free Software Foundation. This program is distributed in the hope
|
||||||
|
that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import org.compiere.util.DB;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Favorite Tree Node Model
|
||||||
|
*
|
||||||
|
* @author Logilite Technologies
|
||||||
|
* @since June 20, 2017
|
||||||
|
*/
|
||||||
|
public class MTreeFavoriteNode extends X_AD_Tree_Favorite_Node
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = -1085269880909860587L;
|
||||||
|
|
||||||
|
public static final String SQL_CHECK_MENU_EXISTS = "SELECT COUNT(AD_Menu_ID) > 0 FROM AD_Tree_Favorite_Node WHERE AD_Tree_Favorite_ID=? AND Parent_ID=? AND AD_Menu_ID=?";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param ctx
|
||||||
|
* @param AD_Tree_Favorite_Node_ID
|
||||||
|
* @param trxName
|
||||||
|
*/
|
||||||
|
public MTreeFavoriteNode(Properties ctx, int AD_Tree_Favorite_Node_ID, String trxName)
|
||||||
|
{
|
||||||
|
super(ctx, AD_Tree_Favorite_Node_ID, trxName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param ctx
|
||||||
|
* @param rs
|
||||||
|
* @param trxName
|
||||||
|
*/
|
||||||
|
public MTreeFavoriteNode(Properties ctx, ResultSet rs, String trxName)
|
||||||
|
{
|
||||||
|
super(ctx, rs, trxName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check the Menu ID is Present on specified Parent id or not
|
||||||
|
*
|
||||||
|
* @param menuID - AD_Menu_ID
|
||||||
|
* @param nodeID - Parent Node_ID
|
||||||
|
* @param treeFavID - AD_ Tree_Favorite_ID
|
||||||
|
* @return True if same menu exits
|
||||||
|
*/
|
||||||
|
public static boolean isMenuExists(int menuID, int nodeID, int treeFavID)
|
||||||
|
{
|
||||||
|
return DB.getSQLValueBooleanEx(null, SQL_CHECK_MENU_EXISTS, treeFavID, nodeID, menuID);
|
||||||
|
} // isMenuExists
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Favourite node for the menu
|
||||||
|
*
|
||||||
|
* @param AD_Tree_Favorite_ID
|
||||||
|
* @param Menu_ID
|
||||||
|
* @return {@link MTreeFavoriteNode}
|
||||||
|
*/
|
||||||
|
public static MTreeFavoriteNode getFavouriteTreeNodeFromMenuID(int AD_Tree_Favorite_ID, int Menu_ID)
|
||||||
|
{
|
||||||
|
Query query = new Query(Env.getCtx(), MTreeFavoriteNode.Table_Name, "AD_Tree_Favorite_ID=? AND AD_Menu_ID=? AND IsFavourite='Y'", null);
|
||||||
|
query.setOnlyActiveRecords(true);
|
||||||
|
query.setParameters(new Object[] { AD_Tree_Favorite_ID, Menu_ID });
|
||||||
|
return query.first();
|
||||||
|
} // getFavouriteTreeNodeFromMenuID
|
||||||
|
|
||||||
|
}
|
|
@ -70,6 +70,28 @@ public class MTreeNode extends DefaultMutableTreeNode
|
||||||
m_color = color;
|
m_color = color;
|
||||||
} // MTreeNode
|
} // MTreeNode
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Construct Model TreeNode [Used MTreeFavorite]
|
||||||
|
*
|
||||||
|
* @param node_ID
|
||||||
|
* @param seqNo
|
||||||
|
* @param name
|
||||||
|
* @param description
|
||||||
|
* @param parent_ID
|
||||||
|
* @param menu_ID
|
||||||
|
* @param img
|
||||||
|
* @param isSummary
|
||||||
|
* @param isCollapsible
|
||||||
|
* @param isFavourite
|
||||||
|
*/
|
||||||
|
public MTreeNode(int node_ID, int seqNo, String name, String description, int parent_ID, int menu_ID,
|
||||||
|
String img, boolean isSummary, boolean isCollapsible, boolean isFavourite)
|
||||||
|
{
|
||||||
|
this(node_ID, seqNo, name, description, parent_ID, isSummary, img, isFavourite, null);
|
||||||
|
setMenu_ID(menu_ID);
|
||||||
|
setCollapsible(isCollapsible);
|
||||||
|
}
|
||||||
|
|
||||||
/** Node ID */
|
/** Node ID */
|
||||||
private int m_node_ID;
|
private int m_node_ID;
|
||||||
/** SeqNo */
|
/** SeqNo */
|
||||||
|
@ -80,7 +102,7 @@ public class MTreeNode extends DefaultMutableTreeNode
|
||||||
private String m_description;
|
private String m_description;
|
||||||
/** Parent ID */
|
/** Parent ID */
|
||||||
private int m_parent_ID;
|
private int m_parent_ID;
|
||||||
/** Summaty */
|
/** Summary */
|
||||||
private boolean m_isSummary;
|
private boolean m_isSummary;
|
||||||
/** Image Indicator */
|
/** Image Indicator */
|
||||||
private String m_imageIndicator;
|
private String m_imageIndicator;
|
||||||
|
@ -90,6 +112,10 @@ public class MTreeNode extends DefaultMutableTreeNode
|
||||||
private boolean m_onBar;
|
private boolean m_onBar;
|
||||||
/** Color */
|
/** Color */
|
||||||
private Color m_color;
|
private Color m_color;
|
||||||
|
/** Menu ID */
|
||||||
|
private int m_menu_ID;
|
||||||
|
/** Is Collapsible */
|
||||||
|
private boolean m_iscollapsible;
|
||||||
|
|
||||||
/** Logger */
|
/** Logger */
|
||||||
private static CLogger log = CLogger.getCLogger(MTreeNode.class);
|
private static CLogger log = CLogger.getCLogger(MTreeNode.class);
|
||||||
|
@ -196,6 +222,14 @@ public class MTreeNode extends DefaultMutableTreeNode
|
||||||
return m_parent_ID;
|
return m_parent_ID;
|
||||||
} // getParent
|
} // getParent
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param parent_ID the m_parent_ID to set
|
||||||
|
*/
|
||||||
|
public void setParent_ID(int parent_ID)
|
||||||
|
{
|
||||||
|
this.m_parent_ID = parent_ID;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Print Name
|
* Print Name
|
||||||
* @return info
|
* @return info
|
||||||
|
@ -256,6 +290,25 @@ public class MTreeNode extends DefaultMutableTreeNode
|
||||||
return m_isSummary;
|
return m_isSummary;
|
||||||
} // isSummary
|
} // isSummary
|
||||||
|
|
||||||
|
public int getMenu_ID()
|
||||||
|
{
|
||||||
|
return m_menu_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setMenu_ID(int m_menu_ID)
|
||||||
|
{
|
||||||
|
this.m_menu_ID = m_menu_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isCollapsible()
|
||||||
|
{
|
||||||
|
return m_iscollapsible;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCollapsible(boolean m_iscollapsible)
|
||||||
|
{
|
||||||
|
this.m_iscollapsible = m_iscollapsible;
|
||||||
|
}
|
||||||
|
|
||||||
/**************************************************************************
|
/**************************************************************************
|
||||||
* Get Image Indicator/Index
|
* Get Image Indicator/Index
|
||||||
|
|
|
@ -0,0 +1,163 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Product: iDempiere ERP & CRM Smart Business Solution *
|
||||||
|
* Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
|
||||||
|
* This program is free software, you can redistribute it and/or modify it *
|
||||||
|
* under the terms version 2 of the GNU General Public License as published *
|
||||||
|
* by the Free Software Foundation. This program is distributed in the hope *
|
||||||
|
* that it will be useful, but WITHOUT ANY WARRANTY, without even the implied *
|
||||||
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||||
|
* See the GNU General Public License for more details. *
|
||||||
|
* You should have received a copy of the GNU General Public License along *
|
||||||
|
* with this program, if not, write to the Free Software Foundation, Inc., *
|
||||||
|
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
|
||||||
|
* For the text or an alternative of this public license, you may reach us *
|
||||||
|
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
|
||||||
|
* or via info@compiere.org or http://www.compiere.org/license.html *
|
||||||
|
*****************************************************************************/
|
||||||
|
/** Generated Model - DO NOT CHANGE */
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
/** Generated Model for AD_Tree_Favorite
|
||||||
|
* @author iDempiere (generated)
|
||||||
|
* @version Release 7.1 - $Id$ */
|
||||||
|
public class X_AD_Tree_Favorite extends PO implements I_AD_Tree_Favorite, I_Persistent
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 20201024L;
|
||||||
|
|
||||||
|
/** Standard Constructor */
|
||||||
|
public X_AD_Tree_Favorite (Properties ctx, int AD_Tree_Favorite_ID, String trxName)
|
||||||
|
{
|
||||||
|
super (ctx, AD_Tree_Favorite_ID, trxName);
|
||||||
|
/** if (AD_Tree_Favorite_ID == 0)
|
||||||
|
{
|
||||||
|
setAD_Role_ID (0);
|
||||||
|
setAD_Tree_Favorite_ID (0);
|
||||||
|
setAD_User_ID (0);
|
||||||
|
} */
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Load Constructor */
|
||||||
|
public X_AD_Tree_Favorite (Properties ctx, ResultSet rs, String trxName)
|
||||||
|
{
|
||||||
|
super (ctx, rs, trxName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** AccessLevel
|
||||||
|
* @return 3 - Client - Org
|
||||||
|
*/
|
||||||
|
protected int get_AccessLevel()
|
||||||
|
{
|
||||||
|
return accessLevel.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Load Meta Data */
|
||||||
|
protected POInfo initPO (Properties ctx)
|
||||||
|
{
|
||||||
|
POInfo poi = POInfo.getPOInfo (ctx, Table_ID, get_TrxName());
|
||||||
|
return poi;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString()
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder ("X_AD_Tree_Favorite[")
|
||||||
|
.append(get_ID()).append("]");
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Role getAD_Role() throws RuntimeException
|
||||||
|
{
|
||||||
|
return (org.compiere.model.I_AD_Role)MTable.get(getCtx(), org.compiere.model.I_AD_Role.Table_Name)
|
||||||
|
.getPO(getAD_Role_ID(), get_TrxName()); }
|
||||||
|
|
||||||
|
/** Set Role.
|
||||||
|
@param AD_Role_ID
|
||||||
|
Responsibility Role
|
||||||
|
*/
|
||||||
|
public void setAD_Role_ID (int AD_Role_ID)
|
||||||
|
{
|
||||||
|
if (AD_Role_ID < 0)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Role_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Role_ID, Integer.valueOf(AD_Role_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Role.
|
||||||
|
@return Responsibility Role
|
||||||
|
*/
|
||||||
|
public int getAD_Role_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_Role_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Favorite Tree.
|
||||||
|
@param AD_Tree_Favorite_ID Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_ID (int AD_Tree_Favorite_ID)
|
||||||
|
{
|
||||||
|
if (AD_Tree_Favorite_ID < 1)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_ID, Integer.valueOf(AD_Tree_Favorite_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favorite Tree.
|
||||||
|
@return Favorite Tree */
|
||||||
|
public int getAD_Tree_Favorite_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_Tree_Favorite_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Favorite Tree.
|
||||||
|
@param AD_Tree_Favorite_UU Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_UU (String AD_Tree_Favorite_UU)
|
||||||
|
{
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_UU, AD_Tree_Favorite_UU);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favorite Tree.
|
||||||
|
@return Favorite Tree */
|
||||||
|
public String getAD_Tree_Favorite_UU ()
|
||||||
|
{
|
||||||
|
return (String)get_Value(COLUMNNAME_AD_Tree_Favorite_UU);
|
||||||
|
}
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_User getAD_User() throws RuntimeException
|
||||||
|
{
|
||||||
|
return (org.compiere.model.I_AD_User)MTable.get(getCtx(), org.compiere.model.I_AD_User.Table_Name)
|
||||||
|
.getPO(getAD_User_ID(), get_TrxName()); }
|
||||||
|
|
||||||
|
/** Set User/Contact.
|
||||||
|
@param AD_User_ID
|
||||||
|
User within the system - Internal or Business Partner Contact
|
||||||
|
*/
|
||||||
|
public void setAD_User_ID (int AD_User_ID)
|
||||||
|
{
|
||||||
|
if (AD_User_ID < 1)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_User_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_User_ID, Integer.valueOf(AD_User_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get User/Contact.
|
||||||
|
@return User within the system - Internal or Business Partner Contact
|
||||||
|
*/
|
||||||
|
public int getAD_User_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_User_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,323 @@
|
||||||
|
/******************************************************************************
|
||||||
|
* Product: iDempiere ERP & CRM Smart Business Solution *
|
||||||
|
* Copyright (C) 1999-2012 ComPiere, Inc. All Rights Reserved. *
|
||||||
|
* This program is free software, you can redistribute it and/or modify it *
|
||||||
|
* under the terms version 2 of the GNU General Public License as published *
|
||||||
|
* by the Free Software Foundation. This program is distributed in the hope *
|
||||||
|
* that it will be useful, but WITHOUT ANY WARRANTY, without even the implied *
|
||||||
|
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
|
||||||
|
* See the GNU General Public License for more details. *
|
||||||
|
* You should have received a copy of the GNU General Public License along *
|
||||||
|
* with this program, if not, write to the Free Software Foundation, Inc., *
|
||||||
|
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. *
|
||||||
|
* For the text or an alternative of this public license, you may reach us *
|
||||||
|
* ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA *
|
||||||
|
* or via info@compiere.org or http://www.compiere.org/license.html *
|
||||||
|
*****************************************************************************/
|
||||||
|
/** Generated Model - DO NOT CHANGE */
|
||||||
|
package org.compiere.model;
|
||||||
|
|
||||||
|
import java.sql.ResultSet;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
/** Generated Model for AD_Tree_Favorite_Node
|
||||||
|
* @author iDempiere (generated)
|
||||||
|
* @version Release 7.1 - $Id$ */
|
||||||
|
public class X_AD_Tree_Favorite_Node extends PO implements I_AD_Tree_Favorite_Node, I_Persistent
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 20201027L;
|
||||||
|
|
||||||
|
/** Standard Constructor */
|
||||||
|
public X_AD_Tree_Favorite_Node (Properties ctx, int AD_Tree_Favorite_Node_ID, String trxName)
|
||||||
|
{
|
||||||
|
super (ctx, AD_Tree_Favorite_Node_ID, trxName);
|
||||||
|
/** if (AD_Tree_Favorite_Node_ID == 0)
|
||||||
|
{
|
||||||
|
setAD_Tree_Favorite_ID (0);
|
||||||
|
setAD_Tree_Favorite_Node_ID (0);
|
||||||
|
setIsCollapsible (true);
|
||||||
|
// Y
|
||||||
|
setIsFavourite (false);
|
||||||
|
// N
|
||||||
|
setIsSummary (false);
|
||||||
|
// N
|
||||||
|
setSeqNo (0);
|
||||||
|
} */
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Load Constructor */
|
||||||
|
public X_AD_Tree_Favorite_Node (Properties ctx, ResultSet rs, String trxName)
|
||||||
|
{
|
||||||
|
super (ctx, rs, trxName);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** AccessLevel
|
||||||
|
* @return 3 - Client - Org
|
||||||
|
*/
|
||||||
|
protected int get_AccessLevel()
|
||||||
|
{
|
||||||
|
return accessLevel.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Load Meta Data */
|
||||||
|
protected POInfo initPO (Properties ctx)
|
||||||
|
{
|
||||||
|
POInfo poi = POInfo.getPOInfo (ctx, Table_ID, get_TrxName());
|
||||||
|
return poi;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toString()
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder ("X_AD_Tree_Favorite_Node[")
|
||||||
|
.append(get_ID()).append(",Name=").append(getName()).append("]");
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Menu getAD_Menu() throws RuntimeException
|
||||||
|
{
|
||||||
|
return (org.compiere.model.I_AD_Menu)MTable.get(getCtx(), org.compiere.model.I_AD_Menu.Table_Name)
|
||||||
|
.getPO(getAD_Menu_ID(), get_TrxName()); }
|
||||||
|
|
||||||
|
/** Set Menu.
|
||||||
|
@param AD_Menu_ID
|
||||||
|
Identifies a Menu
|
||||||
|
*/
|
||||||
|
public void setAD_Menu_ID (int AD_Menu_ID)
|
||||||
|
{
|
||||||
|
if (AD_Menu_ID < 1)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Menu_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Menu_ID, Integer.valueOf(AD_Menu_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Menu.
|
||||||
|
@return Identifies a Menu
|
||||||
|
*/
|
||||||
|
public int getAD_Menu_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_Menu_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Tree_Favorite getAD_Tree_Favorite() throws RuntimeException
|
||||||
|
{
|
||||||
|
return (org.compiere.model.I_AD_Tree_Favorite)MTable.get(getCtx(), org.compiere.model.I_AD_Tree_Favorite.Table_Name)
|
||||||
|
.getPO(getAD_Tree_Favorite_ID(), get_TrxName()); }
|
||||||
|
|
||||||
|
/** Set Favorite Tree.
|
||||||
|
@param AD_Tree_Favorite_ID Favorite Tree */
|
||||||
|
public void setAD_Tree_Favorite_ID (int AD_Tree_Favorite_ID)
|
||||||
|
{
|
||||||
|
if (AD_Tree_Favorite_ID < 1)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_ID, Integer.valueOf(AD_Tree_Favorite_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favorite Tree.
|
||||||
|
@return Favorite Tree */
|
||||||
|
public int getAD_Tree_Favorite_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_Tree_Favorite_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Favorite Node Tree.
|
||||||
|
@param AD_Tree_Favorite_Node_ID Favorite Node Tree */
|
||||||
|
public void setAD_Tree_Favorite_Node_ID (int AD_Tree_Favorite_Node_ID)
|
||||||
|
{
|
||||||
|
if (AD_Tree_Favorite_Node_ID < 1)
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_Node_ID, null);
|
||||||
|
else
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_Node_ID, Integer.valueOf(AD_Tree_Favorite_Node_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favorite Node Tree.
|
||||||
|
@return Favorite Node Tree */
|
||||||
|
public int getAD_Tree_Favorite_Node_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_AD_Tree_Favorite_Node_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Favorite Node Tree.
|
||||||
|
@param AD_Tree_Favorite_Node_UU Favorite Node Tree */
|
||||||
|
public void setAD_Tree_Favorite_Node_UU (String AD_Tree_Favorite_Node_UU)
|
||||||
|
{
|
||||||
|
set_ValueNoCheck (COLUMNNAME_AD_Tree_Favorite_Node_UU, AD_Tree_Favorite_Node_UU);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favorite Node Tree.
|
||||||
|
@return Favorite Node Tree */
|
||||||
|
public String getAD_Tree_Favorite_Node_UU ()
|
||||||
|
{
|
||||||
|
return (String)get_Value(COLUMNNAME_AD_Tree_Favorite_Node_UU);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Collapsible.
|
||||||
|
@param IsCollapsible
|
||||||
|
Flag to indicate the state of the dashboard panel
|
||||||
|
*/
|
||||||
|
public void setIsCollapsible (boolean IsCollapsible)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_IsCollapsible, Boolean.valueOf(IsCollapsible));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Collapsible.
|
||||||
|
@return Flag to indicate the state of the dashboard panel
|
||||||
|
*/
|
||||||
|
public boolean isCollapsible ()
|
||||||
|
{
|
||||||
|
Object oo = get_Value(COLUMNNAME_IsCollapsible);
|
||||||
|
if (oo != null)
|
||||||
|
{
|
||||||
|
if (oo instanceof Boolean)
|
||||||
|
return ((Boolean)oo).booleanValue();
|
||||||
|
return "Y".equals(oo);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Favourite.
|
||||||
|
@param IsFavourite
|
||||||
|
This record is a favourite
|
||||||
|
*/
|
||||||
|
public void setIsFavourite (boolean IsFavourite)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_IsFavourite, Boolean.valueOf(IsFavourite));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Favourite.
|
||||||
|
@return This record is a favourite
|
||||||
|
*/
|
||||||
|
public boolean isFavourite ()
|
||||||
|
{
|
||||||
|
Object oo = get_Value(COLUMNNAME_IsFavourite);
|
||||||
|
if (oo != null)
|
||||||
|
{
|
||||||
|
if (oo instanceof Boolean)
|
||||||
|
return ((Boolean)oo).booleanValue();
|
||||||
|
return "Y".equals(oo);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Summary Level.
|
||||||
|
@param IsSummary
|
||||||
|
This is a summary entity
|
||||||
|
*/
|
||||||
|
public void setIsSummary (boolean IsSummary)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_IsSummary, Boolean.valueOf(IsSummary));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Summary Level.
|
||||||
|
@return This is a summary entity
|
||||||
|
*/
|
||||||
|
public boolean isSummary ()
|
||||||
|
{
|
||||||
|
Object oo = get_Value(COLUMNNAME_IsSummary);
|
||||||
|
if (oo != null)
|
||||||
|
{
|
||||||
|
if (oo instanceof Boolean)
|
||||||
|
return ((Boolean)oo).booleanValue();
|
||||||
|
return "Y".equals(oo);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Login automatic open sequence.
|
||||||
|
@param LoginOpenSeqNo
|
||||||
|
Determine the order items will be automatically opened when user logs in
|
||||||
|
*/
|
||||||
|
public void setLoginOpenSeqNo (int LoginOpenSeqNo)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_LoginOpenSeqNo, Integer.valueOf(LoginOpenSeqNo));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Login automatic open sequence.
|
||||||
|
@return Determine the order items will be automatically opened when user logs in
|
||||||
|
*/
|
||||||
|
public int getLoginOpenSeqNo ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_LoginOpenSeqNo);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Name.
|
||||||
|
@param Name
|
||||||
|
Alphanumeric identifier of the entity
|
||||||
|
*/
|
||||||
|
public void setName (String Name)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_Name, Name);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Name.
|
||||||
|
@return Alphanumeric identifier of the entity
|
||||||
|
*/
|
||||||
|
public String getName ()
|
||||||
|
{
|
||||||
|
return (String)get_Value(COLUMNNAME_Name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public org.compiere.model.I_AD_Tree_Favorite_Node getParent() throws RuntimeException
|
||||||
|
{
|
||||||
|
return (org.compiere.model.I_AD_Tree_Favorite_Node)MTable.get(getCtx(), org.compiere.model.I_AD_Tree_Favorite_Node.Table_Name)
|
||||||
|
.getPO(getParent_ID(), get_TrxName()); }
|
||||||
|
|
||||||
|
/** Set Parent.
|
||||||
|
@param Parent_ID
|
||||||
|
Parent of Entity
|
||||||
|
*/
|
||||||
|
public void setParent_ID (int Parent_ID)
|
||||||
|
{
|
||||||
|
if (Parent_ID < 1)
|
||||||
|
set_Value (COLUMNNAME_Parent_ID, null);
|
||||||
|
else
|
||||||
|
set_Value (COLUMNNAME_Parent_ID, Integer.valueOf(Parent_ID));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Parent.
|
||||||
|
@return Parent of Entity
|
||||||
|
*/
|
||||||
|
public int getParent_ID ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_Parent_ID);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Set Sequence.
|
||||||
|
@param SeqNo
|
||||||
|
Method of ordering records; lowest number comes first
|
||||||
|
*/
|
||||||
|
public void setSeqNo (int SeqNo)
|
||||||
|
{
|
||||||
|
set_Value (COLUMNNAME_SeqNo, Integer.valueOf(SeqNo));
|
||||||
|
}
|
||||||
|
|
||||||
|
/** Get Sequence.
|
||||||
|
@return Method of ordering records; lowest number comes first
|
||||||
|
*/
|
||||||
|
public int getSeqNo ()
|
||||||
|
{
|
||||||
|
Integer ii = (Integer)get_Value(COLUMNNAME_SeqNo);
|
||||||
|
if (ii == null)
|
||||||
|
return 0;
|
||||||
|
return ii.intValue();
|
||||||
|
}
|
||||||
|
}
|
|
@ -2514,6 +2514,43 @@ public final class DB
|
||||||
return rowsArray;
|
return rowsArray;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get Boolean Value from SQL
|
||||||
|
*
|
||||||
|
* @param trxName trx
|
||||||
|
* @param sql sql
|
||||||
|
* @param params array of parameters
|
||||||
|
* @return first boolean value or false
|
||||||
|
* @throws DBException if there is any SQLException
|
||||||
|
*/
|
||||||
|
public static boolean getSQLValueBooleanEx(String trxName, String sql, Object... params)
|
||||||
|
{
|
||||||
|
boolean retValue = false;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
pstmt = prepareStatement(sql, trxName);
|
||||||
|
setParameters(pstmt, params);
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next())
|
||||||
|
retValue = rs.getBoolean(1);
|
||||||
|
else if (log.isLoggable(Level.WARNING))
|
||||||
|
log.fine("No Value " + sql);
|
||||||
|
}
|
||||||
|
catch (SQLException e)
|
||||||
|
{
|
||||||
|
throw new DBException(e, sql);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
close(rs, pstmt);
|
||||||
|
rs = null;
|
||||||
|
pstmt = null;
|
||||||
|
}
|
||||||
|
return retValue;
|
||||||
|
} // getSQLValueBooleanEx
|
||||||
|
|
||||||
/** Read Replica Statements List */
|
/** Read Replica Statements List */
|
||||||
private static final List<PreparedStatement> readReplicaStatements = Collections.synchronizedList(new ArrayList<PreparedStatement>());
|
private static final List<PreparedStatement> readReplicaStatements = Collections.synchronizedList(new ArrayList<PreparedStatement>());
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,524 @@
|
||||||
|
/******************************************************************************
|
||||||
|
Copyright (C) 2017 Adaxa Pty Ltd. All Rights Reserved.
|
||||||
|
This program is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms version 2 of the GNU General Public License as published
|
||||||
|
by the Free Software Foundation. This program is distributed in the hope
|
||||||
|
that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
package org.adempiere.webui.component;
|
||||||
|
|
||||||
|
import org.adempiere.exceptions.AdempiereException;
|
||||||
|
import org.adempiere.webui.dashboard.DPFavourites;
|
||||||
|
import org.adempiere.webui.desktop.FavouriteController;
|
||||||
|
import org.adempiere.webui.theme.ThemeManager;
|
||||||
|
import org.adempiere.webui.util.TreeUtils;
|
||||||
|
import org.adempiere.webui.window.FDialog;
|
||||||
|
import org.compiere.model.I_AD_Tree_Favorite_Node;
|
||||||
|
import org.compiere.model.MTable;
|
||||||
|
import org.compiere.model.MTreeFavoriteNode;
|
||||||
|
import org.compiere.model.MTreeNode;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
import org.compiere.util.Msg;
|
||||||
|
import org.zkoss.zk.ui.Executions;
|
||||||
|
import org.zkoss.zk.ui.event.DropEvent;
|
||||||
|
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.DefaultTreeNode;
|
||||||
|
import org.zkoss.zul.Menuitem;
|
||||||
|
import org.zkoss.zul.Menupopup;
|
||||||
|
import org.zkoss.zul.Tree;
|
||||||
|
import org.zkoss.zul.Treeitem;
|
||||||
|
import org.zkoss.zul.Treerow;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Register listener for Drag&Drop item, Context Menu, Delete Item, User Default Collapse/Expand
|
||||||
|
* Operation
|
||||||
|
*
|
||||||
|
* @author Logilite Technologies
|
||||||
|
* @since June 20, 2017
|
||||||
|
*/
|
||||||
|
public class ADTreeFavoriteOnDropListener implements EventListener<Event>
|
||||||
|
{
|
||||||
|
public static final String MENU_ITEM_DELETE = "DELETE";
|
||||||
|
public static final String MENU_ITEM_EXPAND = "StartWithExpanded";
|
||||||
|
public static final String MENU_ITEM_COLLAPSE = "StartWithCollapsed";
|
||||||
|
public static final String NODE_MOVEINTO = "MoveInto";
|
||||||
|
public static final String NODE_INSERTAFTER = "InsertAfter";
|
||||||
|
|
||||||
|
private FavoriteSimpleTreeModel treeModel;
|
||||||
|
private Tree tree;
|
||||||
|
|
||||||
|
private int mTreeFavID;
|
||||||
|
|
||||||
|
public ADTreeFavoriteOnDropListener(Tree tree, FavoriteSimpleTreeModel treeModel)
|
||||||
|
{
|
||||||
|
this.tree = tree;
|
||||||
|
this.treeModel = treeModel;
|
||||||
|
|
||||||
|
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getDesktop().getSession());
|
||||||
|
mTreeFavID = controller.getAD_Tree_Favorite_ID();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Events For Right Click And Menu Item Dragged Source to Target Folder
|
||||||
|
*/
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
@Override
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
if (Events.ON_RIGHT_CLICK.equals(event.getName()))
|
||||||
|
{
|
||||||
|
MouseEvent me = (MouseEvent) event;
|
||||||
|
Treeitem target = (Treeitem) ((Treerow) me.getTarget()).getParent();
|
||||||
|
DefaultTreeNode<Object> toNode = (DefaultTreeNode<Object>) target.getValue();
|
||||||
|
menuItemList(toNode);
|
||||||
|
}
|
||||||
|
else if (event instanceof DropEvent)
|
||||||
|
{
|
||||||
|
DropEvent de = (DropEvent) event;
|
||||||
|
if (de.getDragged() != de.getTarget())
|
||||||
|
{
|
||||||
|
Treeitem src;
|
||||||
|
Treeitem target;
|
||||||
|
|
||||||
|
if (de.getDragged() instanceof Treerow && de.getTarget() instanceof Treerow)
|
||||||
|
{
|
||||||
|
src = (Treeitem) ((Treerow) de.getDragged()).getParent();
|
||||||
|
target = (Treeitem) ((Treerow) de.getTarget()).getParent();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
FDialog.error(0, "DragItemMenu");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Treerow tr = (Treerow) de.getDragged();
|
||||||
|
String strDraggable = tr.getDraggable();
|
||||||
|
|
||||||
|
if (!strDraggable.equals(DPFavourites.FAVOURITE_DROPPABLE))
|
||||||
|
{
|
||||||
|
DefaultTreeNode<?> stn_src = (DefaultTreeNode<?>) src.getValue();
|
||||||
|
DefaultTreeNode<?> stn_target = (DefaultTreeNode<?>) target.getValue();
|
||||||
|
MTreeNode nd_src = (MTreeNode) stn_src.getData();
|
||||||
|
MTreeNode nd_target = (MTreeNode) stn_target.getData();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* True When Source is a Menu otherwise a folder.
|
||||||
|
*/
|
||||||
|
if (!nd_src.isSummary())
|
||||||
|
{
|
||||||
|
int menuID = nd_src.getMenu_ID();
|
||||||
|
boolean menuAvailable;
|
||||||
|
|
||||||
|
if (!nd_target.isSummary())
|
||||||
|
{
|
||||||
|
menuAvailable = MTreeFavoriteNode.isMenuExists(menuID, nd_target.getParent_ID(), mTreeFavID);
|
||||||
|
if (nd_src.getParent_ID() == nd_target.getParent_ID())
|
||||||
|
{
|
||||||
|
moveNode((DefaultTreeNode<Object>) src.getValue(), (DefaultTreeNode<Object>) target.getValue());
|
||||||
|
}
|
||||||
|
else if (menuAvailable)
|
||||||
|
{
|
||||||
|
showWarningDialog();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
moveNode((DefaultTreeNode<Object>) src.getValue(), (DefaultTreeNode<Object>) target.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
menuAvailable = MTreeFavoriteNode.isMenuExists(menuID, nd_target.getNode_ID(), mTreeFavID);
|
||||||
|
if (menuAvailable)
|
||||||
|
{
|
||||||
|
showWarningDialog();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
moveNode((DefaultTreeNode<Object>) src.getValue(), (DefaultTreeNode<Object>) target.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
moveNode((DefaultTreeNode<Object>) src.getValue(), (DefaultTreeNode<Object>) target.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int mID = Integer.valueOf((src.getValue().toString()));
|
||||||
|
DefaultTreeNode<Object> stn_target = (DefaultTreeNode<Object>) target.getValue();
|
||||||
|
MTreeNode nd = (MTreeNode) stn_target.getData();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* True when Target is Folder, Otherwise its Menu item.
|
||||||
|
*/
|
||||||
|
if (nd.isSummary())
|
||||||
|
{
|
||||||
|
if (MTreeFavoriteNode.isMenuExists(mID, nd.getNode_ID(), mTreeFavID))
|
||||||
|
{
|
||||||
|
showWarningDialog();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
insertNodeMenu(mID, nd.getNode_ID(), stn_target);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> dtn_target_parent = treeModel.getParent(stn_target);
|
||||||
|
int pID = ((MTreeNode) dtn_target_parent.getData()).getNode_ID();
|
||||||
|
|
||||||
|
if (MTreeFavoriteNode.isMenuExists(mID, pID, mTreeFavID))
|
||||||
|
{
|
||||||
|
showWarningDialog();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
insertNodeMenu(mID, pID, dtn_target_parent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show Dialog for Warning
|
||||||
|
*/
|
||||||
|
private void showWarningDialog()
|
||||||
|
{
|
||||||
|
FDialog.warn(0, Msg.getMsg(Env.getCtx(), "AlreadyExists"));
|
||||||
|
} // showWarningDialog
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When Right click on Item show Delete Menu popup for Delete a node.
|
||||||
|
*
|
||||||
|
* @param toNode
|
||||||
|
*/
|
||||||
|
private void menuItemList(DefaultTreeNode<Object> toNode)
|
||||||
|
{
|
||||||
|
int path[] = treeModel.getPath(toNode);
|
||||||
|
Treeitem toItem = tree.renderItemByPath(path);
|
||||||
|
|
||||||
|
tree.setSelectedItem(toItem);
|
||||||
|
Events.sendEvent(tree, new Event(Events.ON_RIGHT_CLICK, tree));
|
||||||
|
|
||||||
|
Menupopup popup = new Menupopup();
|
||||||
|
Menuitem menuItem = new Menuitem(Msg.getMsg(Env.getCtx(), "delete"));
|
||||||
|
menuItem.setParent(popup);
|
||||||
|
menuItem.setValue(MENU_ITEM_DELETE);
|
||||||
|
menuItem.addEventListener(Events.ON_CLICK, new DeleteListener(toNode));
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
menuItem.setIconSclass("z-icon-Delete");
|
||||||
|
else
|
||||||
|
menuItem.setImage(ThemeManager.getThemeResource("images/Delete24.png"));
|
||||||
|
|
||||||
|
MTreeNode mtn = (MTreeNode) toNode.getData();
|
||||||
|
if (mtn.isSummary())
|
||||||
|
{
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(mtn.getNode_ID(), null);
|
||||||
|
if (favNode.isCollapsible())
|
||||||
|
{
|
||||||
|
menuItem = new Menuitem(Msg.getMsg(Env.getCtx(), MENU_ITEM_EXPAND));
|
||||||
|
menuItem.setValue(MENU_ITEM_EXPAND);
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
menuItem.setIconSclass("z-icon-Expand");
|
||||||
|
else
|
||||||
|
menuItem.setImage(ThemeManager.getThemeResource("images/expand-header.png"));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
menuItem = new Menuitem(Msg.getMsg(Env.getCtx(), MENU_ITEM_COLLAPSE));
|
||||||
|
menuItem.setValue(MENU_ITEM_COLLAPSE);
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
menuItem.setIconSclass("z-icon-Parent");
|
||||||
|
else
|
||||||
|
menuItem.setImage(ThemeManager.getThemeResource("images/collapse-header.png"));
|
||||||
|
}
|
||||||
|
menuItem.setParent(popup);
|
||||||
|
menuItem.addEventListener(Events.ON_CLICK, new CollExpdListener(favNode));
|
||||||
|
}
|
||||||
|
|
||||||
|
popup.setPage(tree.getPage());
|
||||||
|
popup.open(toItem.getTreerow(), "after_pointer");
|
||||||
|
} // menuItemList
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Insert Node into Tree it's contains only Menu type node, Dragged from Menu Tab.
|
||||||
|
*
|
||||||
|
* @param menuID
|
||||||
|
* @param parentNodeID
|
||||||
|
* @param stn
|
||||||
|
*/
|
||||||
|
public void insertNodeMenu(int menuID, int parentNodeID, DefaultTreeNode<Object> stn)
|
||||||
|
{
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(0, null);
|
||||||
|
favNode.set_ValueOfColumn(I_AD_Tree_Favorite_Node.COLUMNNAME_AD_Client_ID, Env.getAD_Client_ID(Env.getCtx()));
|
||||||
|
favNode.setAD_Org_ID(Env.getContextAsInt(Env.getCtx(), "#AD_Org_ID"));
|
||||||
|
favNode.setSeqNo(0);
|
||||||
|
favNode.setIsSummary(false);
|
||||||
|
favNode.setAD_Menu_ID(menuID);
|
||||||
|
favNode.setParent_ID(parentNodeID);
|
||||||
|
favNode.setAD_Tree_Favorite_ID(mTreeFavID);
|
||||||
|
if (!favNode.save())
|
||||||
|
{
|
||||||
|
throw new AdempiereException(Msg.getMsg(Env.getCtx(), "NodeNotCreate"));
|
||||||
|
}
|
||||||
|
|
||||||
|
DPFavourites.addNodeInTree(treeModel, tree, stn, favNode);
|
||||||
|
} // insertNodeMenu
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Internally movement of Tree node
|
||||||
|
*
|
||||||
|
* @param movingNode
|
||||||
|
* @param toNode
|
||||||
|
*/
|
||||||
|
private void moveNode(DefaultTreeNode<Object> movingNode, DefaultTreeNode<Object> toNode)
|
||||||
|
{
|
||||||
|
if (movingNode == toNode)
|
||||||
|
return;
|
||||||
|
|
||||||
|
MTreeNode toMNode = (MTreeNode) toNode.getData();
|
||||||
|
if (!toMNode.isSummary())
|
||||||
|
{
|
||||||
|
// drop on a child node
|
||||||
|
moveNode(movingNode, toNode, false);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// drop on a summary node
|
||||||
|
// prompt user to select insert after or drop into the summary node
|
||||||
|
int path[] = treeModel.getPath(toNode);
|
||||||
|
Treeitem toItem = tree.renderItemByPath(path);
|
||||||
|
|
||||||
|
tree.setSelectedItem(toItem);
|
||||||
|
Events.sendEvent(tree, new Event(Events.ON_SELECT, tree));
|
||||||
|
|
||||||
|
MenuListener listener = new MenuListener(movingNode, toNode);
|
||||||
|
|
||||||
|
Menupopup popup = new Menupopup();
|
||||||
|
Menuitem menuItem = new Menuitem(Msg.getMsg(Env.getCtx(), NODE_INSERTAFTER));
|
||||||
|
menuItem.setValue(NODE_INSERTAFTER);
|
||||||
|
menuItem.setParent(popup);
|
||||||
|
menuItem.addEventListener(Events.ON_CLICK, listener);
|
||||||
|
|
||||||
|
menuItem = new Menuitem(Msg.getMsg(Env.getCtx(), NODE_MOVEINTO));
|
||||||
|
menuItem.setValue(NODE_MOVEINTO);
|
||||||
|
menuItem.setParent(popup);
|
||||||
|
menuItem.addEventListener(Events.ON_CLICK, listener);
|
||||||
|
popup.setPage(tree.getPage());
|
||||||
|
popup.open(toItem.getTreerow(), "overlap");
|
||||||
|
}
|
||||||
|
} // moveNode
|
||||||
|
|
||||||
|
/**
|
||||||
|
* It's specify the Moving node where to inserted... Like Insert After or
|
||||||
|
* Move Into.
|
||||||
|
*
|
||||||
|
* @param movingNode
|
||||||
|
* @param toNode
|
||||||
|
* @param moveInto
|
||||||
|
*/
|
||||||
|
private void moveNode(DefaultTreeNode<Object> movingNode, DefaultTreeNode<Object> toNode, boolean moveInto)
|
||||||
|
{
|
||||||
|
int index;
|
||||||
|
DefaultTreeNode<Object> newParent;
|
||||||
|
|
||||||
|
// Remove moving node from its old parent
|
||||||
|
DefaultTreeNode<Object> oldParent = treeModel.getParent(movingNode);
|
||||||
|
treeModel.removeNode(movingNode);
|
||||||
|
|
||||||
|
// get new index
|
||||||
|
if (!moveInto)
|
||||||
|
{
|
||||||
|
newParent = treeModel.getParent(toNode);
|
||||||
|
// the next node
|
||||||
|
index = newParent.getChildren().indexOf(toNode) + 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// drop on a summary node
|
||||||
|
newParent = toNode;
|
||||||
|
index = 0; // the first node
|
||||||
|
}
|
||||||
|
|
||||||
|
// insert in to tree
|
||||||
|
treeModel.addNode(newParent, movingNode, index);
|
||||||
|
|
||||||
|
int path[] = treeModel.getPath(movingNode);
|
||||||
|
if (TreeUtils.isOnInitRenderPosted(tree) || tree.getTreechildren() == null)
|
||||||
|
{
|
||||||
|
tree.onInitRender();
|
||||||
|
}
|
||||||
|
Treeitem movingItem = tree.renderItemByPath(path);
|
||||||
|
tree.setSelectedItem(movingItem);
|
||||||
|
Events.sendEvent(tree, new Event(Events.ON_SELECT, tree));
|
||||||
|
DefaultTreeNode<?> dtNode = movingItem.getValue();
|
||||||
|
treeModel.setSelectedNodeID(((MTreeNode) dtNode.getData()).getNode_ID());
|
||||||
|
|
||||||
|
// Save move node info
|
||||||
|
MTreeNode newParentTNode = (MTreeNode) newParent.getData();
|
||||||
|
MTreeNode moveTNode = (MTreeNode) movingNode.getData();
|
||||||
|
updateTFNParentSeqNo(newParentTNode, moveTNode, index);
|
||||||
|
moveTNode.setParent_ID(newParentTNode.getNode_ID());
|
||||||
|
|
||||||
|
// Old parent child node sequence altering
|
||||||
|
MTreeNode oldMParent = (MTreeNode) oldParent.getData();
|
||||||
|
for (int i = 0; i < oldParent.getChildCount(); i++)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> oldChildNode = (DefaultTreeNode<Object>) oldParent.getChildAt(i);
|
||||||
|
MTreeNode oldTNode = (MTreeNode) oldChildNode.getData();
|
||||||
|
|
||||||
|
updateTFNParentSeqNo(oldMParent, oldTNode, i);
|
||||||
|
}
|
||||||
|
|
||||||
|
// New parent child node sequence altering
|
||||||
|
if (oldParent != newParent)
|
||||||
|
{
|
||||||
|
MTreeNode newMParent = (MTreeNode) newParent.getData();
|
||||||
|
for (int i = 0; i < newParent.getChildCount(); i++)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> newChildNode = (DefaultTreeNode<Object>) newParent.getChildAt(i);
|
||||||
|
MTreeNode newTNode = (MTreeNode) newChildNode.getData();
|
||||||
|
|
||||||
|
updateTFNParentSeqNo(newMParent, newTNode, i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // moveNode
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update reference of Parent and Seqno
|
||||||
|
*
|
||||||
|
* @param parentTNode
|
||||||
|
* @param moveTNode
|
||||||
|
* @param seqNo
|
||||||
|
*/
|
||||||
|
private void updateTFNParentSeqNo(MTreeNode parentTNode, MTreeNode moveTNode, int seqNo)
|
||||||
|
{
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(moveTNode.getNode_ID(), null);
|
||||||
|
if (favNode.getParent_ID() != parentTNode.getNode_ID() || favNode.getSeqNo() != seqNo)
|
||||||
|
{
|
||||||
|
favNode.setParent_ID(parentTNode.getNode_ID());
|
||||||
|
favNode.setSeqNo(seqNo);
|
||||||
|
favNode.save();
|
||||||
|
}
|
||||||
|
} // updateTFNParentSeqNo
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Listener for Delete Node on Right click on MouseEvent
|
||||||
|
*/
|
||||||
|
class DeleteListener implements EventListener<Event>
|
||||||
|
{
|
||||||
|
private DefaultTreeNode<Object> toNode;
|
||||||
|
|
||||||
|
DeleteListener(DefaultTreeNode<Object> toNode)
|
||||||
|
{
|
||||||
|
this.toNode = toNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
if (Events.ON_CLICK.equals(event.getName()) && event.getTarget() instanceof Menuitem)
|
||||||
|
{
|
||||||
|
Menuitem menuItem = (Menuitem) event.getTarget();
|
||||||
|
if (MENU_ITEM_DELETE.equals(menuItem.getValue()))
|
||||||
|
{
|
||||||
|
deleteNodeItem(toNode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Deleting a Node and its hierarchy
|
||||||
|
*
|
||||||
|
* @param toNode
|
||||||
|
*/
|
||||||
|
private void deleteNodeItem(DefaultTreeNode<Object> toNode)
|
||||||
|
{
|
||||||
|
int nodeID = ((MTreeNode) toNode.getData()).getNode_ID();
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(nodeID, null);
|
||||||
|
if (favNode.getAD_Menu_ID() > 0 && favNode.isFavourite())
|
||||||
|
{
|
||||||
|
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getDesktop().getSession());
|
||||||
|
controller.removeNode(favNode.getAD_Menu_ID());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (favNode.delete(true))
|
||||||
|
treeModel.removeNode(toNode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} // DeleteListener
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Listener for set default start Collapse/Expand Node by Right click on
|
||||||
|
* MouseEvent.
|
||||||
|
*/
|
||||||
|
class CollExpdListener implements EventListener<Event>
|
||||||
|
{
|
||||||
|
private MTreeFavoriteNode favNode;
|
||||||
|
|
||||||
|
CollExpdListener(MTreeFavoriteNode favNode)
|
||||||
|
{
|
||||||
|
this.favNode = favNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
if (Events.ON_CLICK.equals(event.getName()) && event.getTarget() instanceof Menuitem)
|
||||||
|
{
|
||||||
|
Menuitem menuItem = (Menuitem) event.getTarget();
|
||||||
|
if (MENU_ITEM_EXPAND.equals(menuItem.getValue()))
|
||||||
|
{
|
||||||
|
favNode.setIsCollapsible(false);
|
||||||
|
}
|
||||||
|
else if (MENU_ITEM_COLLAPSE.equals(menuItem.getValue()))
|
||||||
|
{
|
||||||
|
favNode.setIsCollapsible(true);
|
||||||
|
}
|
||||||
|
favNode.saveEx();
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
|
||||||
|
} // CollExpdListener
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Listener for Movement of Node
|
||||||
|
*/
|
||||||
|
class MenuListener implements EventListener<Event>
|
||||||
|
{
|
||||||
|
private DefaultTreeNode<Object> movingNode;
|
||||||
|
private DefaultTreeNode<Object> toNode;
|
||||||
|
|
||||||
|
MenuListener(DefaultTreeNode<Object> movingNode, DefaultTreeNode<Object> toNode)
|
||||||
|
{
|
||||||
|
this.movingNode = movingNode;
|
||||||
|
this.toNode = toNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
if (Events.ON_CLICK.equals(event.getName()) && event.getTarget() instanceof Menuitem)
|
||||||
|
{
|
||||||
|
Menuitem menuItem = (Menuitem) event.getTarget();
|
||||||
|
if (NODE_INSERTAFTER.equals(menuItem.getValue()))
|
||||||
|
{
|
||||||
|
moveNode(movingNode, toNode, false);
|
||||||
|
}
|
||||||
|
else if (NODE_MOVEINTO.equals(menuItem.getValue()))
|
||||||
|
{
|
||||||
|
moveNode(movingNode, toNode, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
|
||||||
|
} // MenuListener
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,462 @@
|
||||||
|
/******************************************************************************
|
||||||
|
Copyright (C) 2017 Adaxa Pty Ltd. All Rights Reserved.
|
||||||
|
This program is free software; you can redistribute it and/or modify it
|
||||||
|
under the terms version 2 of the GNU General Public License as published
|
||||||
|
by the Free Software Foundation. This program is distributed in the hope
|
||||||
|
that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||||
|
warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
package org.adempiere.webui.component;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Enumeration;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.logging.Level;
|
||||||
|
|
||||||
|
import org.adempiere.util.Callback;
|
||||||
|
import org.adempiere.webui.adwindow.ADTabpanel;
|
||||||
|
import org.adempiere.webui.adwindow.ADWindow;
|
||||||
|
import org.adempiere.webui.desktop.FavouriteController;
|
||||||
|
import org.adempiere.webui.event.DialogEvents;
|
||||||
|
import org.adempiere.webui.exception.ApplicationException;
|
||||||
|
import org.adempiere.webui.session.SessionManager;
|
||||||
|
import org.adempiere.webui.theme.ThemeManager;
|
||||||
|
import org.adempiere.webui.window.WTextEditorDialog;
|
||||||
|
import org.compiere.model.MMenu;
|
||||||
|
import org.compiere.model.MQuery;
|
||||||
|
import org.compiere.model.MTable;
|
||||||
|
import org.compiere.model.MToolBarButtonRestrict;
|
||||||
|
import org.compiere.model.MTreeFavoriteNode;
|
||||||
|
import org.compiere.model.MTreeNode;
|
||||||
|
import org.compiere.util.CLogger;
|
||||||
|
import org.compiere.util.Env;
|
||||||
|
import org.compiere.util.Msg;
|
||||||
|
import org.compiere.util.Util;
|
||||||
|
import org.zkoss.zk.ui.Component;
|
||||||
|
import org.zkoss.zk.ui.Executions;
|
||||||
|
import org.zkoss.zk.ui.event.Event;
|
||||||
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
|
import org.zkoss.zk.ui.event.Events;
|
||||||
|
import org.zkoss.zul.DefaultTreeNode;
|
||||||
|
import org.zkoss.zul.Toolbarbutton;
|
||||||
|
import org.zkoss.zul.Tree;
|
||||||
|
import org.zkoss.zul.TreeNode;
|
||||||
|
import org.zkoss.zul.Treecell;
|
||||||
|
import org.zkoss.zul.Treecol;
|
||||||
|
import org.zkoss.zul.Treecols;
|
||||||
|
import org.zkoss.zul.Treeitem;
|
||||||
|
import org.zkoss.zul.TreeitemRenderer;
|
||||||
|
import org.zkoss.zul.Treerow;
|
||||||
|
import org.zkoss.zul.event.TreeDataEvent;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User Favorite Tree Model
|
||||||
|
*
|
||||||
|
* @author Logilite Technologies
|
||||||
|
* @since June 20, 2017
|
||||||
|
*/
|
||||||
|
public class FavoriteSimpleTreeModel extends SimpleTreeModel implements EventListener<Event>, TreeitemRenderer<Object>
|
||||||
|
{
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
private static final long serialVersionUID = 6950349031548896628L;
|
||||||
|
private static final CLogger log = CLogger.getCLogger(FavoriteSimpleTreeModel.class);
|
||||||
|
|
||||||
|
private List<EventListener<Event>> onDropListners = new ArrayList<EventListener<Event>>();
|
||||||
|
|
||||||
|
private int currSelectedNodeID = 0;
|
||||||
|
private boolean itemDraggable;
|
||||||
|
|
||||||
|
public FavoriteSimpleTreeModel(DefaultTreeNode<Object> root)
|
||||||
|
{
|
||||||
|
super(root);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tree Initialization
|
||||||
|
*
|
||||||
|
* @param tree
|
||||||
|
* @param trxName
|
||||||
|
* @return {@link FavoriteSimpleTreeModel}
|
||||||
|
*/
|
||||||
|
public static FavoriteSimpleTreeModel initADTree(Tree tree, String trxName)
|
||||||
|
{
|
||||||
|
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getDesktop().getSession());
|
||||||
|
MTreeNode root = controller.getRootNode();
|
||||||
|
//
|
||||||
|
FavoriteSimpleTreeModel treeModel = FavoriteSimpleTreeModel.createFrom(root);
|
||||||
|
treeModel.currSelectedNodeID = root.getNode_ID();
|
||||||
|
treeModel.addOnDropEventListener(new ADTreeFavoriteOnDropListener(tree, treeModel));
|
||||||
|
treeModel.setItemDraggable(true);
|
||||||
|
|
||||||
|
if (tree.getTreecols() == null)
|
||||||
|
{
|
||||||
|
Treecols treeCols = new Treecols();
|
||||||
|
tree.appendChild(treeCols);
|
||||||
|
Treecol treeCol = new Treecol();
|
||||||
|
treeCols.appendChild(treeCol);
|
||||||
|
}
|
||||||
|
|
||||||
|
tree.setPageSize(-1);
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tree.setItemRenderer(treeModel);
|
||||||
|
tree.setModel(treeModel);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
log.log(Level.SEVERE, "Failed to setup favourite tree");
|
||||||
|
}
|
||||||
|
|
||||||
|
controller.setTreeAndModel(treeModel, tree);
|
||||||
|
|
||||||
|
return treeModel;
|
||||||
|
} // initADTree
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creating Tree hierarchy
|
||||||
|
*
|
||||||
|
* @param RootNode
|
||||||
|
* @return {@link FavoriteSimpleTreeModel}
|
||||||
|
*/
|
||||||
|
public static FavoriteSimpleTreeModel createFrom(MTreeNode root)
|
||||||
|
{
|
||||||
|
Enumeration<?> nodeEnum = root.children();
|
||||||
|
DefaultTreeNode<Object> stRoot = new DefaultTreeNode<Object>(root, nodeEnum.hasMoreElements() ? new ArrayList<TreeNode<Object>>() : null);
|
||||||
|
populate(stRoot, root);
|
||||||
|
return new FavoriteSimpleTreeModel(stRoot);
|
||||||
|
}// createFrom
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Populate Node
|
||||||
|
*
|
||||||
|
* @param stNode
|
||||||
|
* @param root
|
||||||
|
*/
|
||||||
|
private static void populate(DefaultTreeNode<Object> stNode, MTreeNode root)
|
||||||
|
{
|
||||||
|
Enumeration<?> nodeEnum = root.children();
|
||||||
|
while (nodeEnum.hasMoreElements())
|
||||||
|
{
|
||||||
|
MTreeNode childNode = (MTreeNode) nodeEnum.nextElement();
|
||||||
|
DefaultTreeNode<Object> stChildNode = childNode.getChildCount() > 0 ? new DefaultTreeNode<Object>(childNode, new ArrayList<TreeNode<Object>>())
|
||||||
|
: new DefaultTreeNode<Object>(childNode);
|
||||||
|
|
||||||
|
stNode.getChildren().add(stChildNode);
|
||||||
|
if (childNode.getChildCount() > 0)
|
||||||
|
{
|
||||||
|
populate(stChildNode, childNode);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // populate
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void render(Treeitem ti, Object node, int index)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<?> stn = (DefaultTreeNode<?>) node;
|
||||||
|
MTreeNode mNode = (MTreeNode) stn.getData();
|
||||||
|
Treecell tc = new Treecell(Objects.toString(node));
|
||||||
|
|
||||||
|
Treerow tr = null;
|
||||||
|
if (ti.getTreerow() == null)
|
||||||
|
{
|
||||||
|
tr = new Treerow();
|
||||||
|
tr.setParent(ti);
|
||||||
|
if (isItemDraggable())
|
||||||
|
{
|
||||||
|
tr.setDraggable("true");
|
||||||
|
}
|
||||||
|
if (!onDropListners.isEmpty())
|
||||||
|
{
|
||||||
|
ti.getTreerow().addEventListener(Events.ON_CLICK, this);
|
||||||
|
ti.getTreerow().addEventListener(Events.ON_DOUBLE_CLICK, this);
|
||||||
|
|
||||||
|
tr.setDroppable("true");
|
||||||
|
tr.addEventListener(Events.ON_SELECT, this);
|
||||||
|
tr.addEventListener(Events.ON_RIGHT_CLICK, this);
|
||||||
|
tr.addEventListener(Events.ON_DROP, this);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mNode.getColor() != null)
|
||||||
|
{
|
||||||
|
String hex = ZkCssHelper.createHexColorString(mNode.getColor());
|
||||||
|
ZkCssHelper.appendStyle(tc, "color: #" + hex);
|
||||||
|
}
|
||||||
|
// default user action for Collapse/Expand
|
||||||
|
ti.setOpen(!mNode.isCollapsible());
|
||||||
|
ti.setTooltiptext(mNode.getDescription());
|
||||||
|
|
||||||
|
// Set Icon
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
tc.setIconSclass(getIconSclass(mNode));
|
||||||
|
else
|
||||||
|
tc.setImage(ThemeManager.getThemeResource(getIconFile(mNode)));
|
||||||
|
|
||||||
|
//
|
||||||
|
if (mNode.isSummary())
|
||||||
|
{
|
||||||
|
ZkCssHelper.appendStyle(tc, "font-weight: bold");
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
if (mNode.isWindow())
|
||||||
|
{
|
||||||
|
// Check Window access for ReadWrite & New Toolbar button
|
||||||
|
if (!MToolBarButtonRestrict.isNewButtonRestricted(MMenu.get(mNode.getMenu_ID()).getAD_Window_ID()))
|
||||||
|
{
|
||||||
|
Toolbarbutton newBtn = new Toolbarbutton();
|
||||||
|
newBtn.setTooltiptext(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "New")));
|
||||||
|
newBtn.addEventListener(Events.ON_CLICK, this);
|
||||||
|
tc.appendChild(newBtn);
|
||||||
|
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
{
|
||||||
|
newBtn.setIconSclass("z-icon-New");
|
||||||
|
newBtn.setSclass("trash-toolbarbutton");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
newBtn.setSclass("menu-href-newbtn");
|
||||||
|
newBtn.setImage(ThemeManager.getThemeResource("images/New10.png"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tr = ti.getTreerow();
|
||||||
|
tr.getChildren().clear();
|
||||||
|
}
|
||||||
|
tc.setParent(tr);
|
||||||
|
ti.setValue(node);
|
||||||
|
} // render
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
Component comp = event.getTarget();
|
||||||
|
String eventName = event.getName();
|
||||||
|
|
||||||
|
if (Events.ON_DROP.equals(eventName) || Events.ON_RIGHT_CLICK.equals(eventName))
|
||||||
|
{
|
||||||
|
for (EventListener<Event> listener : onDropListners)
|
||||||
|
{
|
||||||
|
listener.onEvent(event);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* On click of menu to open that window
|
||||||
|
*/
|
||||||
|
if (Events.ON_CLICK.equals(eventName) || Events.ON_SELECT.equals(eventName))
|
||||||
|
{
|
||||||
|
boolean newRecord = false;
|
||||||
|
if (comp instanceof Toolbarbutton)
|
||||||
|
{
|
||||||
|
comp = comp.getParent().getParent();
|
||||||
|
newRecord = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (comp instanceof Treerow)
|
||||||
|
{
|
||||||
|
Treerow treerow = (Treerow) comp;
|
||||||
|
Treeitem treeitem = (Treeitem) treerow.getParent();
|
||||||
|
Object value = treeitem.getValue();
|
||||||
|
|
||||||
|
DefaultTreeNode<?> dtNode = (DefaultTreeNode<?>) value;
|
||||||
|
MTreeNode mtn = (MTreeNode) dtNode.getData();
|
||||||
|
|
||||||
|
if (newRecord)
|
||||||
|
{
|
||||||
|
onNewRecord(mtn.getMenu_ID());
|
||||||
|
}
|
||||||
|
else if (!mtn.isSummary())
|
||||||
|
{
|
||||||
|
int menuID = mtn.getMenu_ID();
|
||||||
|
SessionManager.getAppDesktop().onMenuSelected(menuID);
|
||||||
|
setSelectedNodeID(mtn.getParent_ID());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
setSelectedNodeID(mtn.getNode_ID());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (Events.ON_DOUBLE_CLICK.equals(eventName))
|
||||||
|
{
|
||||||
|
// Rename the folder
|
||||||
|
if (comp instanceof Treerow)
|
||||||
|
{
|
||||||
|
Treerow treerow = (Treerow) comp;
|
||||||
|
Treeitem treeitem = (Treeitem) treerow.getParent();
|
||||||
|
Object value = treeitem.getValue();
|
||||||
|
|
||||||
|
final DefaultTreeNode<?> dtNode = (DefaultTreeNode<?>) value;
|
||||||
|
final MTreeNode mtn = (MTreeNode) dtNode.getData();
|
||||||
|
|
||||||
|
if (mtn.isSummary())
|
||||||
|
{
|
||||||
|
final FavoriteSimpleTreeModel sftModel = this;
|
||||||
|
final WTextEditorDialog editorDialog = new WTextEditorDialog( Msg.getMsg(Env.getCtx(), "EditFolderName"),
|
||||||
|
mtn.getName() == null ? "" : mtn.getName(), true, 100, false, false);
|
||||||
|
|
||||||
|
editorDialog.setAttribute(Window.MODE_KEY, Window.MODE_HIGHLIGHTED);
|
||||||
|
editorDialog.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener<Event>() {
|
||||||
|
@Override
|
||||||
|
public void onEvent(Event event) throws Exception
|
||||||
|
{
|
||||||
|
if (!editorDialog.isCancelled())
|
||||||
|
{
|
||||||
|
mtn.setName(editorDialog.getText());
|
||||||
|
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable .get(Env.getCtx(), MTreeFavoriteNode.Table_ID)
|
||||||
|
.getPO(mtn.getNode_ID(), null);
|
||||||
|
favNode.setName(editorDialog.getText());
|
||||||
|
favNode.saveEx();
|
||||||
|
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
int path[] = sftModel.getPath((TreeNode<Object>) dtNode);
|
||||||
|
if (path != null && path.length > 0)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> parentNode = getRoot();
|
||||||
|
int index = path.length - 1;
|
||||||
|
for (int i = 0; i < index; i++)
|
||||||
|
{
|
||||||
|
parentNode = (DefaultTreeNode<Object>) getChild(parentNode, path[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
fireEvent(TreeDataEvent.CONTENTS_CHANGED, getPath(parentNode), path[index], path[index]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
});
|
||||||
|
|
||||||
|
SessionManager.getAppDesktop().showWindow(editorDialog);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // onEvent
|
||||||
|
|
||||||
|
public void addNode(DefaultTreeNode<Object> newNode)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> root = (DefaultTreeNode<Object>) getRoot();
|
||||||
|
root.getChildren().add(newNode);
|
||||||
|
|
||||||
|
fireEvent(TreeDataEvent.INTERVAL_ADDED, getPath(root), root.getChildCount() - 1, root.getChildCount() - 1);
|
||||||
|
} // addNode
|
||||||
|
|
||||||
|
public DefaultTreeNode<Object> getChild(DefaultTreeNode<Object> parent, int index)
|
||||||
|
{
|
||||||
|
return (DefaultTreeNode<Object>) (parent).getChildAt(index);
|
||||||
|
} // getChild
|
||||||
|
|
||||||
|
private void onNewRecord(int menuID)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
MMenu menu = (MMenu) MTable.get(Env.getCtx(), MMenu.Table_ID).getPO(menuID, null);
|
||||||
|
|
||||||
|
MQuery query = new MQuery("");
|
||||||
|
query.addRestriction("1=2");
|
||||||
|
query.setRecordCount(0);
|
||||||
|
|
||||||
|
SessionManager.getAppDesktop().openWindow(menu.getAD_Window_ID(), query, new Callback<ADWindow>() {
|
||||||
|
@Override
|
||||||
|
public void onCallback(ADWindow result)
|
||||||
|
{
|
||||||
|
if (result == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
result.getADWindowContent().onNew();
|
||||||
|
ADTabpanel adtabpanel = (ADTabpanel) result.getADWindowContent().getADTab().getSelectedTabpanel();
|
||||||
|
adtabpanel.focusToFirstEditor(false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
throw new ApplicationException(e.getMessage(), e);
|
||||||
|
}
|
||||||
|
} // onNewRecord
|
||||||
|
|
||||||
|
public void addOnDropEventListener(EventListener<Event> listener)
|
||||||
|
{
|
||||||
|
onDropListners.add(listener);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setItemDraggable(boolean isDraggable)
|
||||||
|
{
|
||||||
|
itemDraggable = isDraggable;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isItemDraggable()
|
||||||
|
{
|
||||||
|
return itemDraggable;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get value of Current Selected Folder in Tree.
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public int getSelectedNodeID()
|
||||||
|
{
|
||||||
|
return currSelectedNodeID;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the current selected Menu/Folder node in Tree.
|
||||||
|
*
|
||||||
|
* @param nodeID
|
||||||
|
*/
|
||||||
|
public void setSelectedNodeID(int nodeID)
|
||||||
|
{
|
||||||
|
currSelectedNodeID = nodeID;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String getIconFile(MTreeNode mt)
|
||||||
|
{
|
||||||
|
if (mt.isSummary())
|
||||||
|
return "images/Folder16.png";
|
||||||
|
if (mt.isWindow())
|
||||||
|
return "images/mWindow.png";
|
||||||
|
if (mt.isReport())
|
||||||
|
return "images/mReport.png";
|
||||||
|
if (mt.isTask() || mt.isProcess())
|
||||||
|
return "images/mProcess.png";
|
||||||
|
if (mt.isWorkFlow())
|
||||||
|
return "images/mWorkFlow.png";
|
||||||
|
if (mt.isForm())
|
||||||
|
return "images/mForm.png";
|
||||||
|
if (mt.isInfo())
|
||||||
|
return "images/mInfo.png";
|
||||||
|
return "images/mWindow.png";
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String getIconSclass(MTreeNode mt)
|
||||||
|
{
|
||||||
|
if (mt.isSummary())
|
||||||
|
return "z-icon-Folder";
|
||||||
|
if (mt.isWindow())
|
||||||
|
return "z-icon-Window";
|
||||||
|
if (mt.isReport())
|
||||||
|
return "z-icon-Report";
|
||||||
|
if (mt.isProcess())
|
||||||
|
return "z-icon-Process";
|
||||||
|
if (mt.isTask())
|
||||||
|
return "z-icon-Task";
|
||||||
|
if (mt.isWorkFlow())
|
||||||
|
return "z-icon-WorkFlow";
|
||||||
|
if (mt.isForm())
|
||||||
|
return "z-icon-Form";
|
||||||
|
if (mt.isInfo())
|
||||||
|
return "z-icon-Info";
|
||||||
|
return "z-icon-Window";
|
||||||
|
} // getIconSclass
|
||||||
|
|
||||||
|
}
|
|
@ -13,390 +13,273 @@
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
package org.adempiere.webui.dashboard;
|
package org.adempiere.webui.dashboard;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import org.adempiere.exceptions.AdempiereException;
|
||||||
import java.util.List;
|
import org.adempiere.webui.component.Checkbox;
|
||||||
|
import org.adempiere.webui.component.FavoriteSimpleTreeModel;
|
||||||
import org.adempiere.util.Callback;
|
|
||||||
import org.adempiere.webui.adwindow.ADTabpanel;
|
|
||||||
import org.adempiere.webui.adwindow.ADWindow;
|
|
||||||
import org.adempiere.webui.desktop.FavouriteController;
|
import org.adempiere.webui.desktop.FavouriteController;
|
||||||
import org.adempiere.webui.exception.ApplicationException;
|
|
||||||
import org.adempiere.webui.session.SessionManager;
|
|
||||||
import org.adempiere.webui.theme.ITheme;
|
|
||||||
import org.adempiere.webui.theme.ThemeManager;
|
import org.adempiere.webui.theme.ThemeManager;
|
||||||
import org.adempiere.webui.window.FDialog;
|
import org.adempiere.webui.util.TreeUtils;
|
||||||
|
import org.adempiere.webui.util.ZKUpdateUtil;
|
||||||
import org.compiere.model.MMenu;
|
import org.compiere.model.MMenu;
|
||||||
import org.compiere.model.MQuery;
|
import org.compiere.model.MTable;
|
||||||
|
import org.compiere.model.MTreeFavoriteNode;
|
||||||
import org.compiere.model.MTreeNode;
|
import org.compiere.model.MTreeNode;
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
import org.compiere.util.Msg;
|
import org.compiere.util.Msg;
|
||||||
import org.compiere.util.Util;
|
import org.compiere.util.Util;
|
||||||
import org.zkoss.zk.ui.Component;
|
|
||||||
import org.zkoss.zk.ui.Executions;
|
import org.zkoss.zk.ui.Executions;
|
||||||
import org.zkoss.zk.ui.event.DropEvent;
|
|
||||||
import org.zkoss.zk.ui.event.Event;
|
import org.zkoss.zk.ui.event.Event;
|
||||||
import org.zkoss.zk.ui.event.EventListener;
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
import org.zkoss.zk.ui.event.Events;
|
import org.zkoss.zk.ui.event.Events;
|
||||||
import org.zkoss.zul.A;
|
import org.zkoss.zul.Box;
|
||||||
import org.zkoss.zul.Hlayout;
|
import org.zkoss.zul.Button;
|
||||||
import org.zkoss.zul.Image;
|
import org.zkoss.zul.DefaultTreeNode;
|
||||||
import org.zkoss.zul.Label;
|
import org.zkoss.zul.Div;
|
||||||
import org.zkoss.zul.Layout;
|
|
||||||
import org.zkoss.zul.Panel;
|
import org.zkoss.zul.Panel;
|
||||||
import org.zkoss.zul.Panelchildren;
|
import org.zkoss.zul.Panelchildren;
|
||||||
import org.zkoss.zul.Toolbar;
|
import org.zkoss.zul.Textbox;
|
||||||
import org.zkoss.zul.Toolbarbutton;
|
import org.zkoss.zul.Tree;
|
||||||
import org.zkoss.zul.Treeitem;
|
import org.zkoss.zul.Treeitem;
|
||||||
import org.zkoss.zul.Treerow;
|
import org.zkoss.zul.Vbox;
|
||||||
import org.zkoss.zul.Vlayout;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dashboard item: User favourites
|
* Dashboard item: User favourites - Tree based view organize
|
||||||
|
*
|
||||||
* @author Elaine
|
* @author Elaine
|
||||||
* @date November 20, 2008
|
* @author Logilite Technologies - IDEMPIERE-3340
|
||||||
|
* @date November 20, 2008
|
||||||
*/
|
*/
|
||||||
public class DPFavourites extends DashboardPanel implements EventListener<Event> {
|
public class DPFavourites extends DashboardPanel implements EventListener<Event>
|
||||||
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
private static final long serialVersionUID = 8398216266900311289L;
|
private static final long serialVersionUID = 7915726855926813700L;
|
||||||
|
|
||||||
private static final String NODE_ID_ATTR = "Node_ID";
|
public static final String FAVOURITE_DROPPABLE = "favourite";
|
||||||
|
|
||||||
|
private FavoriteSimpleTreeModel treeModel;
|
||||||
public static final String FAVOURITE_DROPPABLE = "favourite";
|
private Checkbox chkExpand;
|
||||||
|
private Checkbox addAsRoot;
|
||||||
public static final String DELETE_FAV_DROPPABLE = "deleteFav";
|
private Textbox textbox;
|
||||||
|
private Tree tree;
|
||||||
private Layout bxFav;
|
|
||||||
|
|
||||||
private Label lblMsg;
|
|
||||||
|
|
||||||
private List<A> links = new ArrayList<>();
|
|
||||||
|
|
||||||
private boolean inCallingController;
|
|
||||||
|
|
||||||
public DPFavourites()
|
public DPFavourites()
|
||||||
{
|
{
|
||||||
super();
|
super();
|
||||||
|
|
||||||
Panel panel = new Panel();
|
Panel panel = new Panel();
|
||||||
|
panel.setClass("fav-tree-panel");
|
||||||
this.appendChild(panel);
|
this.appendChild(panel);
|
||||||
|
|
||||||
Panelchildren favContent = new Panelchildren();
|
Panelchildren favContent = new Panelchildren();
|
||||||
|
favContent.appendChild(createFavoritePanel());
|
||||||
|
favContent.setDroppable(FAVOURITE_DROPPABLE);
|
||||||
|
favContent.addEventListener(Events.ON_DROP, this);
|
||||||
panel.appendChild(favContent);
|
panel.appendChild(favContent);
|
||||||
bxFav = new Vlayout();
|
|
||||||
this.setSclass("favourites-box");
|
|
||||||
favContent.appendChild(bxFav);
|
|
||||||
createFavouritesPanel();
|
|
||||||
|
|
||||||
Toolbar favToolbar = new Toolbar();
|
chkExpand = new Checkbox();
|
||||||
|
chkExpand.setClass("fav-chkbox");
|
||||||
|
chkExpand.setText(Msg.getMsg(Env.getCtx(), "ExpandTree"));
|
||||||
|
chkExpand.addEventListener(Events.ON_CHECK, this);
|
||||||
|
chkExpand.setTooltiptext("Expand/Collapse Tree");
|
||||||
|
|
||||||
|
addAsRoot = new Checkbox();
|
||||||
|
addAsRoot.setClass("fav-chkbox");
|
||||||
|
addAsRoot.setText(Msg.getMsg(Env.getCtx(), "AddAsRoot"));
|
||||||
|
addAsRoot.setTooltiptext("If checked then new node added as on root node.");
|
||||||
|
|
||||||
|
textbox = new Textbox();
|
||||||
|
textbox.setClass("fav-folder-textbox");
|
||||||
|
textbox.setPlaceholder(Msg.getMsg(Env.getCtx(), "AddFolderFavTree"));
|
||||||
|
textbox.setTooltiptext("Specify new node name");
|
||||||
|
textbox.addEventListener(Events.ON_OK, this);
|
||||||
|
|
||||||
|
Button btnAdd = new Button();
|
||||||
|
btnAdd.setClass("fav-button-add");
|
||||||
|
btnAdd.setTooltiptext(Msg.getMsg(Env.getCtx(), "AddFolderFavTree"));
|
||||||
|
btnAdd.setStyle("padding: 3px 10px; margin-left: 1px !important;");
|
||||||
|
btnAdd.addEventListener(Events.ON_CLICK, this);
|
||||||
|
if (ThemeManager.isUseFontIconForImage())
|
||||||
|
btnAdd.setIconSclass("z-icon-TreeFavNodeAdd");
|
||||||
|
else
|
||||||
|
btnAdd.setImage(ThemeManager.getThemeResource("images/FolderAdd16.png"));
|
||||||
|
|
||||||
|
Div favToolbarRow1 = new Div();
|
||||||
|
favToolbarRow1.setClass("fav-toolbar-div favToolbarRow1");
|
||||||
|
favToolbarRow1.appendChild(addAsRoot);
|
||||||
|
favToolbarRow1.appendChild(chkExpand);
|
||||||
|
|
||||||
|
Div favToolbarRow2 = new Div();
|
||||||
|
favToolbarRow2.setClass("fav-toolbar-div favToolbarRow2");
|
||||||
|
favToolbarRow2.appendChild(textbox);
|
||||||
|
favToolbarRow2.appendChild(btnAdd);
|
||||||
|
|
||||||
|
Div favToolbar = new Div();
|
||||||
|
favToolbar.setClass("fav-toolbar");
|
||||||
|
favToolbar.appendChild(favToolbarRow1);
|
||||||
|
favToolbar.appendChild(favToolbarRow2);
|
||||||
this.appendChild(favToolbar);
|
this.appendChild(favToolbar);
|
||||||
|
|
||||||
// Elaine 2008/07/24
|
|
||||||
if (ThemeManager.isUseFontIconForImage())
|
|
||||||
{
|
|
||||||
Label deleteLabel = new Label();
|
|
||||||
favToolbar.appendChild(deleteLabel);
|
|
||||||
deleteLabel.setSclass("z-icon-Trash trash-font-icon");
|
|
||||||
deleteLabel.setTooltiptext(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Delete")));
|
|
||||||
deleteLabel.setDroppable(DELETE_FAV_DROPPABLE);
|
|
||||||
deleteLabel.addEventListener(Events.ON_DROP, this);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Image img = new Image(ThemeManager.getThemeResource("images/Delete24.png"));
|
|
||||||
favToolbar.appendChild(img);
|
|
||||||
img.setStyle("text-align: right; width:24px; height:24px;");
|
|
||||||
img.setTooltiptext(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "Delete")));
|
|
||||||
img.setDroppable(DELETE_FAV_DROPPABLE);
|
|
||||||
img.addEventListener(Events.ON_DROP, this);
|
|
||||||
}
|
|
||||||
//
|
|
||||||
|
|
||||||
favContent.setDroppable(FAVOURITE_DROPPABLE);
|
|
||||||
favContent.addEventListener(Events.ON_DROP, this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void createFavouritesPanel()
|
private Box createFavoritePanel()
|
||||||
{
|
{
|
||||||
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getSession());
|
tree = new Tree();
|
||||||
List<MTreeNode> favorites = controller.getFavourites();
|
tree.setMultiple(false);
|
||||||
for (MTreeNode nd : favorites)
|
tree.setSizedByContent(false);
|
||||||
|
tree.setClass("menu-tree");
|
||||||
|
tree.setStyle("border: none");
|
||||||
|
ZKUpdateUtil.setWidth(tree, "100%");
|
||||||
|
|
||||||
|
Box box = new Vbox();
|
||||||
|
ZKUpdateUtil.setVflex(box, "1");
|
||||||
|
ZKUpdateUtil.setHflex(box, "1");
|
||||||
|
box.appendChild(tree);
|
||||||
|
|
||||||
|
initTreeModel();
|
||||||
|
|
||||||
|
return box;
|
||||||
|
} // createFavoritePanel
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creating Tree structure
|
||||||
|
*/
|
||||||
|
public void initTreeModel()
|
||||||
|
{
|
||||||
|
treeModel = FavoriteSimpleTreeModel.initADTree(tree, null);
|
||||||
|
} // initTreeModel
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event Like open Menu Window, Expand/Collapse Node, Add node into Tree
|
||||||
|
*/
|
||||||
|
public void onEvent(Event event)
|
||||||
|
{
|
||||||
|
String eventName = event.getName();
|
||||||
|
if (eventName.equals(Events.ON_CLICK))
|
||||||
{
|
{
|
||||||
addNode(nd);
|
if (event.getTarget() instanceof Button)
|
||||||
|
addNodeBtnPressed();
|
||||||
}
|
}
|
||||||
|
else if (eventName.equals(Events.ON_OK))
|
||||||
lblMsg = new Label(Msg.getMsg(Env.getCtx(), "DropMenuItemHere"));
|
{
|
||||||
if(bxFav.getChildren().isEmpty()) bxFav.appendChild(lblMsg);
|
addNodeBtnPressed();
|
||||||
|
|
||||||
controller.addInsertedCallback(t -> onInsertedCallback(t));
|
|
||||||
controller.addDeletedCallback(t -> onDeletedCallback(t));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addNode(MTreeNode nd) {
|
|
||||||
addNode(nd.getNode_ID(), nd.toString().trim(), nd.getDescription(), getIconFile(nd), (nd.isWindow() && !nd.isForm()));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void onDeletedCallback(Integer nodeId) {
|
|
||||||
if (inCallingController) return;
|
|
||||||
for (A link : links) {
|
|
||||||
String id = (String) link.getAttribute(NODE_ID_ATTR);
|
|
||||||
if (id.equals(nodeId.toString())) {
|
|
||||||
removeLinkFromUI(link);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
else if (eventName.equals(Events.ON_CHECK) && event.getTarget() == chkExpand)
|
||||||
|
{
|
||||||
private void onInsertedCallback(MTreeNode node) {
|
expandOnCheck();
|
||||||
if (inCallingController) return;
|
|
||||||
for (A link : links) {
|
|
||||||
String id = (String) link.getAttribute(NODE_ID_ATTR);
|
|
||||||
if (id.equals(String.valueOf(node.getNode_ID()))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
addNode(node);
|
} // onEvent
|
||||||
}
|
|
||||||
|
|
||||||
protected void addNode(int nodeId, String label, String description, String imageSrc, boolean addNewBtn) {
|
/**
|
||||||
Hlayout hbox = new Hlayout();
|
* When Button or Enter Key Pressed Add Node Into Tree.
|
||||||
hbox.setSclass("favourites-item");
|
*/
|
||||||
hbox.setSpacing("0px");
|
private void addNodeBtnPressed()
|
||||||
hbox.setValign("middle");
|
{
|
||||||
bxFav.appendChild(hbox);
|
String nodeName = textbox.getText().toString();
|
||||||
|
if (Util.isEmpty(nodeName))
|
||||||
A btnFavItem = new A();
|
textbox.setFocus(true);
|
||||||
btnFavItem.setAttribute(NODE_ID_ATTR, String.valueOf(nodeId));
|
|
||||||
hbox.appendChild(btnFavItem);
|
|
||||||
btnFavItem.setLabel(label);
|
|
||||||
btnFavItem.setTooltiptext(description);
|
|
||||||
if (ThemeManager.isUseFontIconForImage())
|
|
||||||
btnFavItem.setIconSclass(imageSrc);
|
|
||||||
else if (imageSrc.startsWith(ITheme.THEME_PATH_PREFIX))
|
|
||||||
btnFavItem.setImage(imageSrc);
|
|
||||||
else
|
else
|
||||||
btnFavItem.setImage(ThemeManager.getThemeResource(imageSrc));
|
insertSummaryNode(nodeName);
|
||||||
btnFavItem.setDraggable(DELETE_FAV_DROPPABLE);
|
} // addNodeBtnPressed
|
||||||
btnFavItem.addEventListener(Events.ON_CLICK, this);
|
|
||||||
btnFavItem.addEventListener(Events.ON_DROP, this);
|
|
||||||
btnFavItem.setSclass("menu-href");
|
|
||||||
|
|
||||||
if (addNewBtn)
|
/**
|
||||||
|
* Insert Folder as Node to Tree.
|
||||||
|
*/
|
||||||
|
private void insertSummaryNode(String nodeName)
|
||||||
|
{
|
||||||
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(0, null);
|
||||||
|
favNode.set_ValueOfColumn(MTreeFavoriteNode.COLUMNNAME_AD_Client_ID, Env.getAD_Client_ID(Env.getCtx()));
|
||||||
|
favNode.setAD_Org_ID(Env.getAD_Org_ID(Env.getCtx()));
|
||||||
|
favNode.setAD_Tree_Favorite_ID(FavouriteController.getInstance(Executions.getCurrent().getDesktop().getSession()).getAD_Tree_Favorite_ID());
|
||||||
|
favNode.setIsSummary(true);
|
||||||
|
favNode.setName(nodeName);
|
||||||
|
if (addAsRoot.isChecked())
|
||||||
|
favNode.setParent_ID(0);
|
||||||
|
else
|
||||||
|
favNode.setParent_ID(treeModel.getSelectedNodeID());
|
||||||
|
favNode.setSeqNo(0);
|
||||||
|
if (!favNode.save())
|
||||||
|
throw new AdempiereException(Msg.getMsg(Env.getCtx(), "NodeNotCreate"));
|
||||||
|
else
|
||||||
{
|
{
|
||||||
Toolbarbutton newBtn = new Toolbarbutton(null, ThemeManager.getThemeResource("images/New16.png"));
|
DPFavourites.addNodeInTree(treeModel, tree, treeModel.find(null, favNode.getParent_ID()), favNode);
|
||||||
if (ThemeManager.isUseFontIconForImage())
|
textbox.setText("");
|
||||||
{
|
|
||||||
newBtn.setImage(null);
|
|
||||||
newBtn.setIconSclass("z-icon-New");
|
|
||||||
}
|
|
||||||
newBtn.setAttribute(NODE_ID_ATTR, String.valueOf(nodeId));
|
|
||||||
hbox.appendChild(newBtn);
|
|
||||||
newBtn.addEventListener(Events.ON_CLICK, this);
|
|
||||||
newBtn.setSclass("fav-new-btn");
|
|
||||||
newBtn.setTooltiptext(Util.cleanAmp(Msg.getMsg(Env.getCtx(), "New")));
|
|
||||||
}
|
}
|
||||||
links.add(btnFavItem);
|
} // insertSummaryNode
|
||||||
}
|
|
||||||
|
|
||||||
public void onEvent(Event event)
|
/**
|
||||||
{
|
* Expand All Node
|
||||||
Component comp = event.getTarget();
|
*/
|
||||||
String eventName = event.getName();
|
public void expandAll()
|
||||||
|
{
|
||||||
|
if (!chkExpand.isChecked())
|
||||||
|
chkExpand.setChecked(true);
|
||||||
|
if (!tree.getChildren().isEmpty())
|
||||||
|
TreeUtils.expandAll(tree);
|
||||||
|
} // expandAll
|
||||||
|
|
||||||
if(eventName.equals(Events.ON_CLICK))
|
/**
|
||||||
{
|
* Collapse All Node
|
||||||
doOnClick(comp);
|
*/
|
||||||
}
|
public void collapseAll()
|
||||||
// Elaine 2008/07/24
|
{
|
||||||
else if(eventName.equals(Events.ON_DROP))
|
if (chkExpand.isChecked())
|
||||||
{
|
chkExpand.setChecked(false);
|
||||||
DropEvent de = (DropEvent) event;
|
if (!tree.getChildren().isEmpty())
|
||||||
Component dragged = de.getDragged();
|
TreeUtils.collapseAll(tree);
|
||||||
|
} // collapseAll
|
||||||
|
|
||||||
if(comp instanceof Panelchildren)
|
/**
|
||||||
{
|
* On check to Expand/Collapse Tree
|
||||||
if(dragged instanceof Treerow)
|
*/
|
||||||
{
|
private void expandOnCheck()
|
||||||
Treerow treerow = (Treerow) dragged;
|
{
|
||||||
Treeitem treeitem = (Treeitem) treerow.getParent();
|
if (chkExpand.isChecked())
|
||||||
|
expandAll();
|
||||||
|
else
|
||||||
|
collapseAll();
|
||||||
|
} // expandOnCheck
|
||||||
|
|
||||||
addItem(treeitem);
|
/**
|
||||||
}
|
* Add Node in Tree view
|
||||||
}
|
*
|
||||||
else if(comp instanceof Image || comp instanceof Label)
|
* @param treeModel - FavoriteSimpleTreeModel
|
||||||
{
|
* @param tree - Tree
|
||||||
if(dragged instanceof A)
|
* @param parentTreeNode - Parent DefaultTreeNode
|
||||||
{
|
* @param favNode - MTreeFavoriteNode
|
||||||
A btn = (A) dragged;
|
*/
|
||||||
removeLink(btn);
|
public static void addNodeInTree(FavoriteSimpleTreeModel treeModel, Tree tree, DefaultTreeNode<Object> parentTreeNode, MTreeFavoriteNode favNode)
|
||||||
}
|
{
|
||||||
}
|
String name = null;
|
||||||
}
|
String action = null;
|
||||||
//
|
|
||||||
}
|
|
||||||
|
|
||||||
private void doOnClick(Component comp) {
|
if (favNode.getAD_Menu_ID() > 0)
|
||||||
if(comp instanceof A)
|
|
||||||
{
|
{
|
||||||
A btn = (A) comp;
|
MMenu menu = (MMenu) MTable.get(Env.getCtx(), MMenu.Table_ID).getPO(favNode.getAD_Menu_ID(), null);
|
||||||
|
name = menu.get_Translation(MMenu.COLUMNNAME_Name);
|
||||||
int menuId = 0;
|
action = menu.getAction();
|
||||||
try
|
|
||||||
{
|
|
||||||
menuId = Integer.valueOf((String)btn.getAttribute(NODE_ID_ATTR));
|
|
||||||
}
|
|
||||||
catch (Exception e) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if(menuId > 0) SessionManager.getAppDesktop().onMenuSelected(menuId);
|
|
||||||
}
|
}
|
||||||
else if (comp instanceof Toolbarbutton) {
|
else
|
||||||
Toolbarbutton btn = (Toolbarbutton) comp;
|
|
||||||
|
|
||||||
int menuId = 0;
|
|
||||||
try
|
|
||||||
{
|
|
||||||
menuId = Integer.valueOf((String)btn.getAttribute(NODE_ID_ATTR));
|
|
||||||
}
|
|
||||||
catch (Exception e) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if(menuId > 0)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
MMenu menu = new MMenu(Env.getCtx(), menuId, null);
|
|
||||||
|
|
||||||
MQuery query = new MQuery("");
|
|
||||||
query.addRestriction("1=2");
|
|
||||||
query.setRecordCount(0);
|
|
||||||
|
|
||||||
SessionManager.getAppDesktop().openWindow(menu.getAD_Window_ID(), query, new Callback<ADWindow>() {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCallback(ADWindow result) {
|
|
||||||
if(result == null)
|
|
||||||
return;
|
|
||||||
|
|
||||||
result.getADWindowContent().onNew();
|
|
||||||
ADTabpanel adtabpanel = (ADTabpanel) result.getADWindowContent().getADTab().getSelectedTabpanel();
|
|
||||||
adtabpanel.focusToFirstEditor(false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
throw new ApplicationException(e.getMessage(), e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void removeLink(A btn) {
|
|
||||||
String value = (String) btn.getAttribute(NODE_ID_ATTR);
|
|
||||||
|
|
||||||
if(value != null)
|
|
||||||
{
|
{
|
||||||
int Node_ID = Integer.valueOf(value.toString());
|
name = favNode.getName();
|
||||||
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getSession());
|
|
||||||
inCallingController = true;
|
|
||||||
if(controller.removeNode(Node_ID))
|
|
||||||
{
|
|
||||||
removeLinkFromUI(btn);
|
|
||||||
}
|
|
||||||
inCallingController = false;
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private void removeLinkFromUI(A btn) {
|
MTreeNode mtnNew = new MTreeNode( favNode.getAD_Tree_Favorite_Node_ID(), favNode.getSeqNo(), name, name, favNode.getParent_ID(), favNode.getAD_Menu_ID(),
|
||||||
if (btn.getParent() instanceof Hlayout)
|
action, favNode.isSummary(), favNode.isCollapsible(), favNode.isFavourite());
|
||||||
bxFav.removeChild(btn.getParent());
|
|
||||||
|
|
||||||
if(bxFav.getChildren().isEmpty())
|
DefaultTreeNode<Object> newNode = new DefaultTreeNode<Object>(mtnNew);
|
||||||
bxFav.appendChild(lblMsg);
|
|
||||||
|
|
||||||
bxFav.invalidate();
|
//
|
||||||
links.remove(btn);
|
treeModel.addNode(parentTreeNode, newNode, 0);
|
||||||
}
|
int[] path = treeModel.getPath(newNode);
|
||||||
|
Treeitem ti = tree.renderItemByPath(path);
|
||||||
|
tree.setSelectedItem(ti);
|
||||||
|
Events.sendEvent(tree, new Event(Events.ON_SELECT, tree));
|
||||||
|
|
||||||
/**
|
if (mtnNew.isSummary())
|
||||||
* Add menu treeitem into the user favorite panel
|
treeModel.setSelectedNodeID(mtnNew.getNode_ID());
|
||||||
* @param treeitem
|
else
|
||||||
*/
|
treeModel.setSelectedNodeID(favNode.getParent_ID());
|
||||||
public void addItem(Treeitem treeitem) {
|
} // addNodeInTree
|
||||||
Object value = treeitem.getValue();
|
|
||||||
if(value != null)
|
|
||||||
{
|
|
||||||
int Node_ID = Integer.valueOf(value.toString());
|
|
||||||
FavouriteController controller = FavouriteController.getInstance(Executions.getCurrent().getSession());
|
|
||||||
inCallingController = true;
|
|
||||||
if(controller.addNode(Node_ID))
|
|
||||||
{
|
|
||||||
String menuType = (String) treeitem.getAttribute("menu.type");
|
|
||||||
boolean isWindow = menuType != null && menuType.equals("window");
|
|
||||||
|
|
||||||
String label = null;
|
|
||||||
String image = null;
|
|
||||||
if (treeitem.getLabel() != null && treeitem.getLabel().trim().length() > 0)
|
|
||||||
{
|
|
||||||
label = treeitem.getLabel().trim();
|
|
||||||
image = treeitem.getImage();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
A link = (A) treeitem.getTreerow().getFirstChild().getFirstChild();
|
|
||||||
label = link.getLabel();
|
|
||||||
if (ThemeManager.isUseFontIconForImage() && link.getIconSclass() != null)
|
|
||||||
image = link.getIconSclass();
|
|
||||||
else
|
|
||||||
image = link.getImage();
|
|
||||||
}
|
|
||||||
|
|
||||||
addNode(Node_ID, label, treeitem.getTooltiptext(), image, isWindow);
|
|
||||||
} else {
|
|
||||||
FDialog.error(0, this, "BookmarkExist", null);
|
|
||||||
}
|
|
||||||
inCallingController = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private String getIconFile(MTreeNode mt) {
|
|
||||||
if (ThemeManager.isUseFontIconForImage()) {
|
|
||||||
return getIconSclass(mt);
|
|
||||||
}
|
|
||||||
if (mt.isWindow())
|
|
||||||
return "images/mWindow.png";
|
|
||||||
if (mt.isReport())
|
|
||||||
return "images/mReport.png";
|
|
||||||
if (mt.isProcess() || mt.isTask())
|
|
||||||
return "images/mProcess.png";
|
|
||||||
if (mt.isWorkFlow())
|
|
||||||
return "images/mWorkFlow.png";
|
|
||||||
if (mt.isForm())
|
|
||||||
return "images/mForm.png";
|
|
||||||
if (mt.isInfo())
|
|
||||||
return "images/mInfo.png";
|
|
||||||
return "images/mWindow.png";
|
|
||||||
}
|
|
||||||
|
|
||||||
private String getIconSclass(MTreeNode mt) {
|
|
||||||
if (mt.isWindow())
|
|
||||||
return "z-icon-Window";
|
|
||||||
if (mt.isReport())
|
|
||||||
return "z-icon-Report";
|
|
||||||
if (mt.isProcess() || mt.isTask())
|
|
||||||
return "z-icon-Task";
|
|
||||||
if (mt.isWorkFlow())
|
|
||||||
return "z-icon-WorkFlow";
|
|
||||||
if (mt.isForm())
|
|
||||||
return "z-icon-Form";
|
|
||||||
if (mt.isInfo())
|
|
||||||
return "z-icon-Info";
|
|
||||||
return "z-icon-Window";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -65,6 +65,7 @@ import org.compiere.model.MPreference;
|
||||||
import org.compiere.model.MQuery;
|
import org.compiere.model.MQuery;
|
||||||
import org.compiere.model.MRole;
|
import org.compiere.model.MRole;
|
||||||
import org.compiere.model.MTable;
|
import org.compiere.model.MTable;
|
||||||
|
import org.compiere.model.MTreeFavorite;
|
||||||
import org.compiere.model.Query;
|
import org.compiere.model.Query;
|
||||||
import org.compiere.model.SystemIDs;
|
import org.compiere.model.SystemIDs;
|
||||||
import org.compiere.model.X_AD_CtxHelp;
|
import org.compiere.model.X_AD_CtxHelp;
|
||||||
|
@ -1046,13 +1047,13 @@ public class DefaultDesktop extends TabbedDesktop implements MenuListener, Seria
|
||||||
if (isActionURL()) // IDEMPIERE-2334 vs IDEMPIERE-3000 - do not open windows when coming from an action URL
|
if (isActionURL()) // IDEMPIERE-2334 vs IDEMPIERE-3000 - do not open windows when coming from an action URL
|
||||||
return;
|
return;
|
||||||
|
|
||||||
StringBuilder sql = new StringBuilder("SELECT m.Action, COALESCE(m.AD_Window_ID, m.AD_Process_ID, m.AD_Form_ID, m.AD_Workflow_ID, m.AD_Task_ID, AD_InfoWindow_ID) ")
|
StringBuilder sql = new StringBuilder("SELECT m.Action, COALESCE(m.AD_Window_ID, m.AD_Process_ID, m.AD_Form_ID, m.AD_Workflow_ID, m.AD_Task_ID, m.AD_InfoWindow_ID) ")
|
||||||
.append(" FROM AD_TreeBar tb")
|
.append(" FROM AD_Tree_Favorite_Node tfn ")
|
||||||
.append(" INNER JOIN AD_Menu m ON (tb.Node_ID = m.AD_Menu_ID)")
|
.append(" INNER JOIN AD_Menu m ON (tfn.AD_Menu_ID = m.AD_Menu_ID)")
|
||||||
.append(" WHERE tb.AD_Tree_ID = ").append(getMenuID())
|
.append(" WHERE tfn.AD_Tree_Favorite_ID = ")
|
||||||
.append(" AND tb.AD_User_ID = ").append(Env.getAD_User_ID(ctx))
|
.append(MTreeFavorite.getFavoriteTreeID(Env.getAD_Client_ID(Env.getCtx()), Env.getAD_Role_ID(Env.getCtx()), Env.getAD_User_ID(Env.getCtx())))
|
||||||
.append(" AND tb.IsActive = 'Y' AND tb.LoginOpenSeqNo > 0")
|
.append(" AND tfn.IsActive = 'Y' AND tfn.LoginOpenSeqNo > 0")
|
||||||
.append(" ORDER BY tb.LoginOpenSeqNo");
|
.append(" ORDER BY tfn.LoginOpenSeqNo");
|
||||||
|
|
||||||
List<List<Object>> rows = DB.getSQLArrayObjectsEx(null, sql.toString());
|
List<List<Object>> rows = DB.getSQLArrayObjectsEx(null, sql.toString());
|
||||||
if (rows != null && rows.size() > 0) {
|
if (rows != null && rows.size() > 0) {
|
||||||
|
|
|
@ -3,116 +3,149 @@
|
||||||
*/
|
*/
|
||||||
package org.adempiere.webui.desktop;
|
package org.adempiere.webui.desktop;
|
||||||
|
|
||||||
import static org.compiere.model.SystemIDs.TREE_MENUPRIMARY;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Enumeration;
|
import java.util.Enumeration;
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.adempiere.exceptions.AdempiereException;
|
||||||
import org.adempiere.util.Callback;
|
import org.adempiere.util.Callback;
|
||||||
import org.compiere.model.MTree;
|
import org.adempiere.webui.component.FavoriteSimpleTreeModel;
|
||||||
|
import org.adempiere.webui.dashboard.DPFavourites;
|
||||||
|
import org.compiere.model.I_AD_Tree_Favorite;
|
||||||
|
import org.compiere.model.I_AD_Tree_Favorite_Node;
|
||||||
|
import org.compiere.model.MMenu;
|
||||||
|
import org.compiere.model.MTable;
|
||||||
|
import org.compiere.model.MTreeFavorite;
|
||||||
|
import org.compiere.model.MTreeFavoriteNode;
|
||||||
import org.compiere.model.MTreeNode;
|
import org.compiere.model.MTreeNode;
|
||||||
import org.compiere.model.MUser;
|
|
||||||
import org.compiere.util.DB;
|
|
||||||
import org.compiere.util.Env;
|
import org.compiere.util.Env;
|
||||||
|
import org.compiere.util.Msg;
|
||||||
import org.zkoss.zk.ui.Session;
|
import org.zkoss.zk.ui.Session;
|
||||||
|
import org.zkoss.zul.DefaultTreeNode;
|
||||||
|
import org.zkoss.zul.Tree;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author hengsin
|
* @author hengsin
|
||||||
*
|
* @author Logilite Technologies - IDEMPIERE-3340
|
||||||
*/
|
*/
|
||||||
public class FavouriteController {
|
public class FavouriteController
|
||||||
|
{
|
||||||
|
|
||||||
private static final String DESKTOP_FAVOURITE_CONTROLLER = "desktop.FavouriteController";
|
private static final String DESKTOP_FAVOURITE_CONTROLLER = "desktop.FavouriteController";
|
||||||
private Map<Integer, MTreeNode> nodeMap;
|
private Map<Integer, MTreeNode> nodeMap;
|
||||||
private int m_AD_Tree_ID;
|
private int m_AD_Tree_Favorite_ID;
|
||||||
private MTreeNode rootNode;
|
|
||||||
private List<Callback<Integer>> deletedCallbacks;
|
|
||||||
private List<Callback<MTreeNode>> insertedCallbacks;
|
|
||||||
|
|
||||||
private FavouriteController() {
|
private MTreeNode rootNode;
|
||||||
|
private List<Callback<Integer>> deletedCallbacks;
|
||||||
|
private List<Callback<MTreeNode>> insertedCallbacks;
|
||||||
|
|
||||||
|
private Tree tree;
|
||||||
|
private FavoriteSimpleTreeModel treeModel;
|
||||||
|
|
||||||
|
private FavouriteController()
|
||||||
|
{
|
||||||
init();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void init() {
|
private void init()
|
||||||
|
{
|
||||||
nodeMap = new LinkedHashMap<>();
|
nodeMap = new LinkedHashMap<>();
|
||||||
deletedCallbacks = new ArrayList<>();
|
deletedCallbacks = new ArrayList<>();
|
||||||
insertedCallbacks = new ArrayList<>();
|
insertedCallbacks = new ArrayList<>();
|
||||||
|
|
||||||
int AD_Role_ID = Env.getAD_Role_ID(Env.getCtx());
|
int AD_Role_ID = Env.getAD_Role_ID(Env.getCtx());
|
||||||
int AD_Tree_ID = DB.getSQLValue(null,
|
int AD_User_ID = Env.getAD_User_ID(Env.getCtx());
|
||||||
"SELECT COALESCE(r.AD_Tree_Menu_ID, ci.AD_Tree_Menu_ID)"
|
int AD_Client_ID = Env.getAD_Client_ID(Env.getCtx());
|
||||||
+ "FROM AD_ClientInfo ci"
|
int AD_Org_ID = Env.getAD_Org_ID(Env.getCtx());
|
||||||
+ " INNER JOIN AD_Role r ON (ci.AD_Client_ID=r.AD_Client_ID) "
|
|
||||||
+ "WHERE AD_Role_ID=?", AD_Role_ID);
|
|
||||||
if (AD_Tree_ID <= 0)
|
|
||||||
AD_Tree_ID = TREE_MENUPRIMARY; // Menu
|
|
||||||
|
|
||||||
m_AD_Tree_ID = AD_Tree_ID;
|
MTreeFavorite vTree = null;
|
||||||
|
m_AD_Tree_Favorite_ID = MTreeFavorite.getFavoriteTreeID(AD_Client_ID, AD_Role_ID, AD_User_ID);
|
||||||
|
if (m_AD_Tree_Favorite_ID <= 0)
|
||||||
|
{
|
||||||
|
vTree = (MTreeFavorite) MTable.get(Env.getCtx(), MTreeFavorite.Table_ID).getPO(0, null);
|
||||||
|
vTree.set_ValueOfColumn(I_AD_Tree_Favorite.COLUMNNAME_AD_Client_ID, AD_Client_ID);
|
||||||
|
vTree.setAD_Org_ID(AD_Org_ID);
|
||||||
|
vTree.setAD_Role_ID(AD_Role_ID);
|
||||||
|
vTree.setAD_User_ID(AD_User_ID);
|
||||||
|
if (!vTree.save())
|
||||||
|
throw new AdempiereException(Msg.getMsg(Env.getCtx(), "FavTreeNotCreate"));
|
||||||
|
|
||||||
|
m_AD_Tree_Favorite_ID = vTree.getAD_Tree_Favorite_ID();
|
||||||
|
}
|
||||||
|
|
||||||
|
vTree = (MTreeFavorite) MTable.get(Env.getCtx(), MTreeFavorite.Table_ID).getPO(m_AD_Tree_Favorite_ID, null);
|
||||||
|
|
||||||
MTree vTree = new MTree(Env.getCtx(), AD_Tree_ID, false, true, false, null);
|
|
||||||
rootNode = vTree.getRoot();
|
rootNode = vTree.getRoot();
|
||||||
Enumeration<?> enTop = rootNode.children();
|
Enumeration<?> enTop = rootNode.children();
|
||||||
while(enTop.hasMoreElements())
|
while (enTop.hasMoreElements())
|
||||||
{
|
{
|
||||||
MTreeNode ndTop = (MTreeNode)enTop.nextElement();
|
MTreeNode ndTop = (MTreeNode) enTop.nextElement();
|
||||||
Enumeration<?> en = ndTop.preorderEnumeration();
|
Enumeration<?> en = ndTop.preorderEnumeration();
|
||||||
while (en.hasMoreElements())
|
while (en.hasMoreElements())
|
||||||
{
|
{
|
||||||
MTreeNode nd = (MTreeNode)en.nextElement();
|
MTreeNode nd = (MTreeNode) en.nextElement();
|
||||||
if (nd.isOnBar()) {
|
if (nd.isOnBar() && nd.getMenu_ID() > 0)
|
||||||
nodeMap.put(nd.getNode_ID(), nd);
|
{
|
||||||
|
nodeMap.put(nd.getMenu_ID(), nd);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
} // init
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get favourites controller instance for current session
|
* Get favourites controller instance for current session
|
||||||
* @param currSess
|
*
|
||||||
* @return FavouriteController session instance
|
* @param currSess
|
||||||
|
* @return FavouriteController session instance
|
||||||
*/
|
*/
|
||||||
public static synchronized FavouriteController getInstance(Session currSess) {
|
public static synchronized FavouriteController getInstance(Session currSess)
|
||||||
|
{
|
||||||
FavouriteController controller = (FavouriteController) currSess.getAttribute(DESKTOP_FAVOURITE_CONTROLLER);
|
FavouriteController controller = (FavouriteController) currSess.getAttribute(DESKTOP_FAVOURITE_CONTROLLER);
|
||||||
if (controller == null) {
|
if (controller == null)
|
||||||
|
{
|
||||||
controller = new FavouriteController();
|
controller = new FavouriteController();
|
||||||
currSess.setAttribute(DESKTOP_FAVOURITE_CONTROLLER, controller);
|
currSess.setAttribute(DESKTOP_FAVOURITE_CONTROLLER, controller);
|
||||||
}
|
}
|
||||||
return controller;
|
return controller;
|
||||||
}
|
} // getInstance
|
||||||
|
|
||||||
private boolean barDBupdate(boolean add, int Node_ID)
|
private boolean barUpdate(boolean add, int Menu_ID)
|
||||||
{
|
{
|
||||||
int AD_Client_ID = MUser.get(Env.getCtx()).getAD_Client_ID();
|
|
||||||
int AD_Org_ID = 0;
|
|
||||||
int AD_User_ID = Env.getContextAsInt(Env.getCtx(), "#AD_User_ID");
|
|
||||||
StringBuilder sql = new StringBuilder();
|
|
||||||
if (add)
|
if (add)
|
||||||
sql.append("INSERT INTO AD_TreeBar "
|
{
|
||||||
+ "(AD_Tree_ID,AD_User_ID,Node_ID, "
|
MTreeFavoriteNode favNode = (MTreeFavoriteNode) MTable.get(Env.getCtx(), MTreeFavoriteNode.Table_ID).getPO(0, null);
|
||||||
+ "AD_Client_ID,AD_Org_ID, "
|
favNode.set_ValueOfColumn(I_AD_Tree_Favorite_Node.COLUMNNAME_AD_Client_ID, Env.getAD_Client_ID(Env.getCtx()));
|
||||||
+ "IsActive,Created,CreatedBy,Updated,UpdatedBy)VALUES (")
|
favNode.setAD_Org_ID(Env.getContextAsInt(Env.getCtx(), "#AD_Org_ID"));
|
||||||
.append(m_AD_Tree_ID).append(",").append(AD_User_ID).append(",").append(Node_ID).append(",")
|
favNode.setAD_Tree_Favorite_ID(m_AD_Tree_Favorite_ID);
|
||||||
.append(AD_Client_ID).append(",").append(AD_Org_ID).append(",")
|
favNode.setSeqNo(0);
|
||||||
.append("'Y',getDate(),").append(AD_User_ID).append(",getDate(),").append(AD_User_ID).append(")");
|
favNode.setParent_ID(0);
|
||||||
// if already exist, will result in ORA-00001: unique constraint (ADEMPIERE.AD_TREEBAR_KEY)
|
favNode.setIsSummary(false);
|
||||||
|
favNode.setAD_Menu_ID(Menu_ID);
|
||||||
|
favNode.setIsFavourite(true);
|
||||||
|
return favNode.save();
|
||||||
|
}
|
||||||
else
|
else
|
||||||
sql.append("DELETE FROM AD_TreeBar WHERE AD_Tree_ID=").append(m_AD_Tree_ID)
|
{
|
||||||
.append(" AND AD_User_ID=").append(AD_User_ID)
|
MTreeFavoriteNode favNode = MTreeFavoriteNode.getFavouriteTreeNodeFromMenuID(m_AD_Tree_Favorite_ID, Menu_ID);
|
||||||
.append(" AND Node_ID=").append(Node_ID);
|
if (favNode != null)
|
||||||
int no = DB.executeUpdate(sql.toString(), false, null);
|
return favNode.delete(true);
|
||||||
return no == 1;
|
}
|
||||||
}
|
return false;
|
||||||
|
} // barUpdate
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add node (by node id) to favourties
|
* Add node (by node id) to favourties
|
||||||
* @param nodeId
|
*
|
||||||
* @return true if successfully added
|
* @param nodeId
|
||||||
|
* @return true if successfully added
|
||||||
*/
|
*/
|
||||||
public boolean addNode(int nodeId) {
|
public boolean addNode(int nodeId)
|
||||||
|
{
|
||||||
MTreeNode node = rootNode.findNode(nodeId);
|
MTreeNode node = rootNode.findNode(nodeId);
|
||||||
if (node != null) {
|
if (node != null)
|
||||||
|
{
|
||||||
return addNode(node);
|
return addNode(node);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
|
@ -120,13 +153,25 @@ public class FavouriteController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* add tree node to favourites
|
* add tree node to favourites
|
||||||
* @param node
|
*
|
||||||
* @return true if successfully added
|
* @param node
|
||||||
|
* @return true if successfully added
|
||||||
*/
|
*/
|
||||||
public boolean addNode(MTreeNode node) {
|
public boolean addNode(MTreeNode node)
|
||||||
if(barDBupdate(true, node.getNode_ID())) {
|
{
|
||||||
|
if (barUpdate(true, node.getNode_ID()))
|
||||||
|
{
|
||||||
nodeMap.put(node.getNode_ID(), node);
|
nodeMap.put(node.getNode_ID(), node);
|
||||||
for (Callback<MTreeNode> callback : insertedCallbacks) {
|
if (tree != null && treeModel != null)
|
||||||
|
{
|
||||||
|
MMenu menu = (MMenu) MTable.get(Env.getCtx(), MMenu.Table_ID).getPO(node.getNode_ID(), null);
|
||||||
|
MTreeFavoriteNode favNode = MTreeFavoriteNode.getFavouriteTreeNodeFromMenuID(m_AD_Tree_Favorite_ID, menu.getAD_Menu_ID());
|
||||||
|
|
||||||
|
DPFavourites.addNodeInTree(treeModel, tree, treeModel.getRoot(), favNode);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (Callback<MTreeNode> callback : insertedCallbacks)
|
||||||
|
{
|
||||||
callback.onCallback(node);
|
callback.onCallback(node);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -136,14 +181,24 @@ public class FavouriteController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* remove node (by node id) from favourites
|
* remove node (by node id) from favourites
|
||||||
* @param nodeId
|
*
|
||||||
* @return true if found and remove
|
* @param nodeId
|
||||||
|
* @return true if found and remove
|
||||||
*/
|
*/
|
||||||
public boolean removeNode(int nodeId) {
|
public boolean removeNode(int nodeId)
|
||||||
if(barDBupdate(false, nodeId))
|
{
|
||||||
|
MTreeFavoriteNode favNode = MTreeFavoriteNode.getFavouriteTreeNodeFromMenuID(m_AD_Tree_Favorite_ID, nodeId);
|
||||||
|
if (favNode != null && barUpdate(false, nodeId))
|
||||||
{
|
{
|
||||||
|
if (treeModel != null)
|
||||||
|
{
|
||||||
|
DefaultTreeNode<Object> treeNode = treeModel.find(treeModel.getRoot(), favNode.getAD_Tree_Favorite_Node_ID());
|
||||||
|
treeModel.removeNode(treeNode);
|
||||||
|
}
|
||||||
|
|
||||||
nodeMap.remove(nodeId);
|
nodeMap.remove(nodeId);
|
||||||
for (Callback<Integer> callback : deletedCallbacks) {
|
for (Callback<Integer> callback : deletedCallbacks)
|
||||||
|
{
|
||||||
callback.onCallback(nodeId);
|
callback.onCallback(nodeId);
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -152,19 +207,22 @@ public class FavouriteController {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param nodeId
|
* @param nodeId
|
||||||
* @return true if node id is in the current favourites list
|
* @return true if node id is in the current favourites list
|
||||||
*/
|
*/
|
||||||
public boolean hasNode(int nodeId) {
|
public boolean hasNode(int nodeId)
|
||||||
|
{
|
||||||
return nodeMap.keySet().contains(nodeId);
|
return nodeMap.keySet().contains(nodeId);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return List of favourites node
|
* @return List of favourites node
|
||||||
*/
|
*/
|
||||||
public List<MTreeNode> getFavourites() {
|
public List<MTreeNode> getFavourites()
|
||||||
|
{
|
||||||
List<MTreeNode> list = new ArrayList<>();
|
List<MTreeNode> list = new ArrayList<>();
|
||||||
for(int key : nodeMap.keySet()) {
|
for (int key : nodeMap.keySet())
|
||||||
|
{
|
||||||
list.add(nodeMap.get(key));
|
list.add(nodeMap.get(key));
|
||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
|
@ -172,17 +230,37 @@ public class FavouriteController {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* add callback for after add node to favourites
|
* add callback for after add node to favourites
|
||||||
|
*
|
||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public void addInsertedCallback(Callback<MTreeNode> callback) {
|
public void addInsertedCallback(Callback<MTreeNode> callback)
|
||||||
|
{
|
||||||
insertedCallbacks.add(callback);
|
insertedCallbacks.add(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* add callback for after remove node from favourites
|
* add callback for after remove node from favourites
|
||||||
|
*
|
||||||
* @param callback
|
* @param callback
|
||||||
*/
|
*/
|
||||||
public void addDeletedCallback(Callback<Integer> callback) {
|
public void addDeletedCallback(Callback<Integer> callback)
|
||||||
|
{
|
||||||
deletedCallbacks.add(callback);
|
deletedCallbacks.add(callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getAD_Tree_Favorite_ID()
|
||||||
|
{
|
||||||
|
return m_AD_Tree_Favorite_ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MTreeNode getRootNode()
|
||||||
|
{
|
||||||
|
return rootNode;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTreeAndModel(FavoriteSimpleTreeModel treeModel, Tree tree)
|
||||||
|
{
|
||||||
|
this.tree = tree;
|
||||||
|
this.treeModel = treeModel;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -61,6 +61,7 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
private CKeditor editor;
|
private CKeditor editor;
|
||||||
private Label status;
|
private Label status;
|
||||||
private Tab htmlTab;
|
private Tab htmlTab;
|
||||||
|
private boolean isShowHTMLTab = true;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -71,14 +72,27 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
* @param isHtml - select the html tab at start
|
* @param isHtml - select the html tab at start
|
||||||
*/
|
*/
|
||||||
public WTextEditorDialog(String title, String text, boolean editable, int maxSize, boolean IsHtml) {
|
public WTextEditorDialog(String title, String text, boolean editable, int maxSize, boolean IsHtml) {
|
||||||
|
this(title, text, editable, maxSize, IsHtml, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param title
|
||||||
|
* @param text
|
||||||
|
* @param editable
|
||||||
|
* @param maxSize
|
||||||
|
* @param IsHtml - select the html tab at start
|
||||||
|
* @param IsShowHTMLTab - Is to shown HTML tab
|
||||||
|
*/
|
||||||
|
public WTextEditorDialog(String title, String text, boolean editable, int maxSize,boolean IsHtml, boolean IsShowHTMLTab) {
|
||||||
super();
|
super();
|
||||||
setTitle(title);
|
setTitle(title);
|
||||||
this.editable = editable;
|
this.editable = editable;
|
||||||
this.maxSize = maxSize;
|
this.maxSize = maxSize;
|
||||||
this.text = text;
|
this.text = text;
|
||||||
|
this.isShowHTMLTab = IsShowHTMLTab;
|
||||||
|
|
||||||
init();
|
init();
|
||||||
if (IsHtml)
|
if (IsHtml && IsShowHTMLTab)
|
||||||
tabbox.setSelectedTab(htmlTab);
|
tabbox.setSelectedTab(htmlTab);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,22 +139,24 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
ZKUpdateUtil.setVflex(textBox, "1");
|
ZKUpdateUtil.setVflex(textBox, "1");
|
||||||
tabPanel.appendChild(textBox);
|
tabPanel.appendChild(textBox);
|
||||||
|
|
||||||
htmlTab = new Tab("HTML");
|
if (isShowHTMLTab) {
|
||||||
tabs.appendChild(htmlTab);
|
htmlTab = new Tab("HTML");
|
||||||
|
tabs.appendChild(htmlTab);
|
||||||
|
|
||||||
tabPanel = new Tabpanel();
|
tabPanel = new Tabpanel();
|
||||||
tabPanels.appendChild(tabPanel);
|
tabPanels.appendChild(tabPanel);
|
||||||
if (editable) {
|
if (editable) {
|
||||||
createEditor(tabPanel);
|
createEditor(tabPanel);
|
||||||
} else {
|
} else {
|
||||||
Div div = new Div();
|
Div div = new Div();
|
||||||
ZKUpdateUtil.setHeight(div, "100%");
|
ZKUpdateUtil.setHeight(div, "100%");
|
||||||
ZKUpdateUtil.setWidth(div, "100%");
|
ZKUpdateUtil.setWidth(div, "100%");
|
||||||
div.setStyle("overflow: auto; border: 1px solid");
|
div.setStyle("overflow: auto; border: 1px solid");
|
||||||
tabPanel.appendChild(div);
|
tabPanel.appendChild(div);
|
||||||
Html html = new Html();
|
Html html = new Html();
|
||||||
div.appendChild(html);
|
div.appendChild(html);
|
||||||
html.setContent(text);
|
html.setContent(text);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
vbox.appendChild(new Separator());
|
vbox.appendChild(new Separator());
|
||||||
|
@ -160,7 +176,7 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
|
|
||||||
status.setStyle("margin-top:10px;");
|
status.setStyle("margin-top:10px;");
|
||||||
textBox.addEventListener(Events.ON_CHANGE, this);
|
textBox.addEventListener(Events.ON_CHANGE, this);
|
||||||
if (editor != null)
|
if (isShowHTMLTab && editor != null)
|
||||||
editor.addEventListener(Events.ON_CHANGE, this);
|
editor.addEventListener(Events.ON_CHANGE, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -298,3 +298,6 @@
|
||||||
.z-icon-Calendar:before {
|
.z-icon-Calendar:before {
|
||||||
content: "\f073";
|
content: "\f073";
|
||||||
}
|
}
|
||||||
|
.z-icon-TreeFavNodeAdd:before {
|
||||||
|
content: "\f07b";
|
||||||
|
}
|
|
@ -229,3 +229,40 @@
|
||||||
padding-left: 4px;
|
padding-left: 4px;
|
||||||
padding-right: 4px;
|
padding-right: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
<%-- User Favorite Dashboard Panel Start --%>
|
||||||
|
.fav-tree-panel {
|
||||||
|
padding: 2px;
|
||||||
|
background-color: #99b4d233;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fav-toolbar {
|
||||||
|
background-color: #eee;
|
||||||
|
background-image: linear-gradient(#f4f4f4, #cecece, #bfbfbf);
|
||||||
|
border: 1px solid #d8d8d8;
|
||||||
|
border-radius: 5px;
|
||||||
|
margin: 2px;
|
||||||
|
padding: 3px 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fav-toolbar-div {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fav-tree-btn {
|
||||||
|
margin-left: 5px !important;
|
||||||
|
padding: 3px 15px;
|
||||||
|
border: 1px solid #6d6d6d;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fav-folder-textbox {
|
||||||
|
margin-left: 5px;
|
||||||
|
width: 70%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fav-chkbox {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
<%-- User Favorite Dashboard Panel End --%>
|
||||||
|
|
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.3 KiB |
Loading…
Reference in New Issue