IDEMPIERE-5443 - Date Range Filter Component (#1526)

* IDEMPIERE-5443 - Date Range Filter Component

* IDEMPIERE-5443 - fix migration script filename

* IDEMPIERE-5443 - new reference type Date Range Picker for process

* IDEMPIERE-5443 - remove Date Range Editor

* IDEMPIERE-5443 - pr1526 patch

* IDEMPIERE-5443 - fixes

* IDEMPIERE-5443 - nix NPE, add Locale
This commit is contained in:
Peter Takács 2022-10-27 05:27:13 +02:00 committed by GitHub
parent e759c5bd8a
commit 59b7e3c899
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 1316 additions and 40 deletions

View File

@ -0,0 +1,178 @@
-- IDEMPIERE-5443
SELECT register_migration_script('202210041053_IDEMPIERE-5443.sql') FROM dual;
SET SQLBLANKLINES ON
SET DEFINE OFF
-- Oct 4, 2022, 4:07:25 PM CEST
INSERT INTO AD_Reference (AD_Reference_ID,Name,Description,ValidationType,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,IsOrderByValue,AD_Reference_UU) VALUES (200217,'DateSelectionMode','Date Selection Mode','L',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:07:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:07:25','YYYY-MM-DD HH24:MI:SS'),100,'D','N','c7a6eae8-e3af-4072-aced-cdd10a18f8da')
;
-- Oct 4, 2022, 4:08:11 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200561,'Previous',200217,'P',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:11','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:11','YYYY-MM-DD HH24:MI:SS'),100,'D','573c8cf3-0c70-4a89-b7fc-595eba982c6d')
;
-- Oct 4, 2022, 4:08:21 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200562,'Next',200217,'N',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:21','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:21','YYYY-MM-DD HH24:MI:SS'),100,'D','e7a8b7ad-c970-4a5e-85a5-fe6b1bb004b9')
;
-- Oct 4, 2022, 4:08:36 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200563,'Current',200217,'C',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:36','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:36','YYYY-MM-DD HH24:MI:SS'),100,'D','1344c204-9744-4473-89ae-3188183ebc89')
;
-- Oct 4, 2022, 4:08:47 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200564,'Before',200217,'B',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:47','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:47','YYYY-MM-DD HH24:MI:SS'),100,'D','603e46ea-12e6-4c4b-86bc-0b07924f9534')
;
-- Oct 4, 2022, 4:08:56 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200565,'After',200217,'A',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:55','YYYY-MM-DD HH24:MI:SS'),100,'D','ca9abc44-80eb-4f22-abcc-9161af2e3057')
;
-- Oct 4, 2022, 4:09:09 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200566,'On',200217,'O',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:09:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:09:08','YYYY-MM-DD HH24:MI:SS'),100,'D','7c20abd1-fabf-44ca-9b6f-e55a4af06e46')
;
-- Oct 4, 2022, 4:09:22 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200567,'Between',200217,'BW',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:09:22','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:09:22','YYYY-MM-DD HH24:MI:SS'),100,'D','30b8b6bd-631d-4c23-924b-691f840041ed')
;
-- Oct 6, 2022, 4:18:39 PM CEST
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','After {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:18:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:18:39','YYYY-MM-DD HH24:MI:SS'),100,200790,'AfterDate','D','cf7ace7d-a6d0-4ef5-a7e4-84409100e6aa')
;
-- Oct 6, 2022, 4:19:20 PM CEST
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','Before {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:19:20','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:19:20','YYYY-MM-DD HH24:MI:SS'),100,200791,'BeforeDate','D','280bb6a6-0d19-4c54-946c-d60b712093b6')
;
-- Oct 6, 2022, 4:20:06 PM CEST
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','On {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:20:06','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:20:06','YYYY-MM-DD HH24:MI:SS'),100,200792,'OnDate','D','f229dfef-7775-450f-be84-dc84c13ea7ff')
;
-- Oct 6, 2022, 4:21:16 PM CEST
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','Update Filter',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:21:15','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:21:15','YYYY-MM-DD HH24:MI:SS'),100,200793,'UpdateFilter','D','252c9784-e2ec-4cca-87b8-3a5d1b5b73e2')
;
-- Oct 6, 2022, 5:25:59 PM CEST
UPDATE AD_Ref_List SET Value='01',Updated=TO_TIMESTAMP('2022-10-06 17:25:59','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200561
;
-- Oct 6, 2022, 5:26:02 PM CEST
UPDATE AD_Ref_List SET Value='02',Updated=TO_TIMESTAMP('2022-10-06 17:26:02','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200562
;
-- Oct 6, 2022, 5:26:07 PM CEST
UPDATE AD_Ref_List SET Value='03',Updated=TO_TIMESTAMP('2022-10-06 17:26:07','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200563
;
-- Oct 6, 2022, 5:26:20 PM CEST
UPDATE AD_Ref_List SET Value='04',Updated=TO_TIMESTAMP('2022-10-06 17:26:20','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200564
;
-- Oct 6, 2022, 5:26:23 PM CEST
UPDATE AD_Ref_List SET Value='05',Updated=TO_TIMESTAMP('2022-10-06 17:26:23','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200565
;
-- Oct 6, 2022, 5:26:27 PM CEST
UPDATE AD_Ref_List SET Value='07',Updated=TO_TIMESTAMP('2022-10-06 17:26:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200567
;
-- Oct 6, 2022, 5:26:39 PM CEST
UPDATE AD_Ref_List SET Value='06',Updated=TO_TIMESTAMP('2022-10-06 17:26:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200566
;
-- Oct 6, 2022, 5:31:25 PM CEST
UPDATE AD_Reference SET IsOrderByValue='Y',Updated=TO_TIMESTAMP('2022-10-06 17:31:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Reference_ID=200217
;
-- Oct 7, 2022, 4:45:08 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200568,'Quick',200217,'08',0,0,'Y',TO_TIMESTAMP('2022-10-07 16:45:07','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-07 16:45:07','YYYY-MM-DD HH24:MI:SS'),100,'D','b7e5adb3-b9ce-4bae-bd19-8c8e60413d18')
;
-- Oct 11, 2022, 3:21:59 PM CEST
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 (200221,'Months','L',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:21:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:21:59','YYYY-MM-DD HH24:MI:SS'),100,'D','N','bbabc9d6-241d-4cb9-b5b5-2b02e37abdf1')
;
-- Oct 11, 2022, 3:22:32 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200600,'January',200221,'01',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:32','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:32','YYYY-MM-DD HH24:MI:SS'),100,'D','d4575089-ba8d-4438-84e7-9e0ef0381f3e')
;
-- Oct 11, 2022, 3:22:41 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200601,'February',200221,'02',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:40','YYYY-MM-DD HH24:MI:SS'),100,'D','d553098d-4e18-490c-ba35-3735e0546a77')
;
-- Oct 11, 2022, 3:22:55 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200602,'March',200221,'03',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:55','YYYY-MM-DD HH24:MI:SS'),100,'D','7be305ae-1774-4200-b30d-8c62b896759c')
;
-- Oct 11, 2022, 3:23:04 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200603,'April',200221,'04',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:03','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:03','YYYY-MM-DD HH24:MI:SS'),100,'D','f612d5c5-89d7-4abe-8f6b-387587a35386')
;
-- Oct 11, 2022, 3:23:11 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200604,'May',200221,'05',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:11','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:11','YYYY-MM-DD HH24:MI:SS'),100,'D','50bbeb15-5ad4-490d-86a9-c3a892ca8ee8')
;
-- Oct 11, 2022, 3:23:19 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200605,'June',200221,'06',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:18','YYYY-MM-DD HH24:MI:SS'),100,'D','38a38a15-233e-43ab-86e5-1ce87416f7f9')
;
-- Oct 11, 2022, 3:23:27 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200606,'July',200221,'07',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:26','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:26','YYYY-MM-DD HH24:MI:SS'),100,'D','ea6cc9a3-80ca-439b-be9b-8bf261e0eeec')
;
-- Oct 11, 2022, 3:23:43 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200607,'August',200221,'08',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:43','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:43','YYYY-MM-DD HH24:MI:SS'),100,'D','d15ff0d4-0997-4f49-a49a-fb197a38b090')
;
-- Oct 11, 2022, 3:24:10 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200608,'September',200221,'09',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:10','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:10','YYYY-MM-DD HH24:MI:SS'),100,'D','289db278-fab8-43d6-a83d-621f1c0ef71d')
;
-- Oct 11, 2022, 3:24:18 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200609,'October',200221,'10',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:18','YYYY-MM-DD HH24:MI:SS'),100,'D','d9bcc45a-dcb1-4c2b-bc90-581ea527625d')
;
-- Oct 11, 2022, 3:24:25 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200610,'November',200221,'11',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:25','YYYY-MM-DD HH24:MI:SS'),100,'D','5d8b3451-0d70-4912-842d-dd19c40a681e')
;
-- Oct 11, 2022, 3:24:33 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200611,'December',200221,'12',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:33','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:33','YYYY-MM-DD HH24:MI:SS'),100,'D','01cdce86-aa1b-4b80-9849-bc2df988ad4c')
;
-- Oct 11, 2022, 3:24:41 PM CEST
UPDATE AD_Reference SET IsOrderByValue='Y',Updated=TO_TIMESTAMP('2022-10-11 15:24:41','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Reference_ID=200221
;
-- Oct 11, 2022, 3:24:53 PM CEST
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 (200222,'Quarters','L',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:52','YYYY-MM-DD HH24:MI:SS'),100,'D','Y','c045f9d5-379c-490f-b96d-920c5ac59d50')
;
-- Oct 11, 2022, 3:25:08 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200612,'First Quarter',200222,'01',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:08','YYYY-MM-DD HH24:MI:SS'),100,'D','3d5d0b5c-2239-41f9-ac3b-5f6f931357c3')
;
-- Oct 11, 2022, 3:25:18 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200613,'Second Quarter',200222,'02',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:17','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:17','YYYY-MM-DD HH24:MI:SS'),100,'D','417f6b55-1451-4f85-bfbf-7fa3153a5473')
;
-- Oct 11, 2022, 3:25:27 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200614,'Third Quarter',200222,'03',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:27','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:27','YYYY-MM-DD HH24:MI:SS'),100,'D','d984daa5-7b2b-4233-8860-a03ee0e72c7c')
;
-- Oct 11, 2022, 3:25:35 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200615,'Fourth Quarter',200222,'04',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:34','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:34','YYYY-MM-DD HH24:MI:SS'),100,'D','95ecec3c-9829-488a-b376-d7af83ba9448')
;
-- Oct 11, 2022, 4:51:05 PM CEST
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','Current Year Months',0,0,'Y',TO_TIMESTAMP('2022-10-11 16:51:05','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 16:51:05','YYYY-MM-DD HH24:MI:SS'),100,200794,'CurrentYearMonths','D','6bd493c4-79a8-4a50-8eb0-c45b4a58bfa6')
;
-- Oct 11, 2022, 4:51:30 PM CEST
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','Current Year Quarters',0,0,'Y',TO_TIMESTAMP('2022-10-11 16:51:30','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 16:51:30','YYYY-MM-DD HH24:MI:SS'),100,200795,'CurrentYearQuarters','D','83a2c54d-6282-4a05-a016-19da13fdf681')
;
-- Oct 11, 2022, 5:00:16 PM CEST
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','Selected Time Range',0,0,'Y',TO_TIMESTAMP('2022-10-11 17:00:16','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 17:00:16','YYYY-MM-DD HH24:MI:SS'),100,200796,'SelectedTimeRange','D','16d9cce7-fff1-4375-8bbb-af300c3c1a18')
;

View File

@ -0,0 +1,18 @@
-- IDEMPIERE-5443
SELECT register_migration_script('202210251555_IDEMPIERE-5443.sql') FROM dual;
SET SQLBLANKLINES ON
SET DEFINE OFF
-- Oct 25, 2022, 3:55:13 PM CEST
UPDATE AD_Message SET MsgText='Range',Updated=TO_TIMESTAMP('2022-10-25 15:55:13','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Message_ID=200796
;
-- Oct 25, 2022, 3:55:43 PM CEST
UPDATE AD_Message SET MsgText='Apply', Value='ApplyFilter',Updated=TO_TIMESTAMP('2022-10-25 15:55:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Message_ID=200793
;
-- Oct 25, 2022, 4:15:00 PM CEST
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','End Date must be after Start Date',0,0,'Y',TO_TIMESTAMP('2022-10-25 16:14:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-25 16:14:59','YYYY-MM-DD HH24:MI:SS'),100,200797,'EndDateAfterStartDate','D','9d7aa27f-ec1f-407f-bbf0-6659885c7b80')
;

View File

@ -0,0 +1,175 @@
-- IDEMPIERE-5443
SELECT register_migration_script('202210041053_IDEMPIERE-5443.sql') FROM dual;
-- Oct 4, 2022, 4:07:25 PM CEST
INSERT INTO AD_Reference (AD_Reference_ID,Name,Description,ValidationType,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,IsOrderByValue,AD_Reference_UU) VALUES (200217,'DateSelectionMode','Date Selection Mode','L',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:07:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:07:25','YYYY-MM-DD HH24:MI:SS'),100,'D','N','c7a6eae8-e3af-4072-aced-cdd10a18f8da')
;
-- Oct 4, 2022, 4:08:11 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200561,'Previous',200217,'P',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:11','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:11','YYYY-MM-DD HH24:MI:SS'),100,'D','573c8cf3-0c70-4a89-b7fc-595eba982c6d')
;
-- Oct 4, 2022, 4:08:21 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200562,'Next',200217,'N',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:21','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:21','YYYY-MM-DD HH24:MI:SS'),100,'D','e7a8b7ad-c970-4a5e-85a5-fe6b1bb004b9')
;
-- Oct 4, 2022, 4:08:36 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200563,'Current',200217,'C',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:36','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:36','YYYY-MM-DD HH24:MI:SS'),100,'D','1344c204-9744-4473-89ae-3188183ebc89')
;
-- Oct 4, 2022, 4:08:47 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200564,'Before',200217,'B',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:47','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:47','YYYY-MM-DD HH24:MI:SS'),100,'D','603e46ea-12e6-4c4b-86bc-0b07924f9534')
;
-- Oct 4, 2022, 4:08:56 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200565,'After',200217,'A',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:08:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:08:55','YYYY-MM-DD HH24:MI:SS'),100,'D','ca9abc44-80eb-4f22-abcc-9161af2e3057')
;
-- Oct 4, 2022, 4:09:09 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200566,'On',200217,'O',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:09:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:09:08','YYYY-MM-DD HH24:MI:SS'),100,'D','7c20abd1-fabf-44ca-9b6f-e55a4af06e46')
;
-- Oct 4, 2022, 4:09:22 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200567,'Between',200217,'BW',0,0,'Y',TO_TIMESTAMP('2022-10-04 16:09:22','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-04 16:09:22','YYYY-MM-DD HH24:MI:SS'),100,'D','30b8b6bd-631d-4c23-924b-691f840041ed')
;
-- Oct 6, 2022, 4:18:39 PM CEST
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','After {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:18:39','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:18:39','YYYY-MM-DD HH24:MI:SS'),100,200790,'AfterDate','D','cf7ace7d-a6d0-4ef5-a7e4-84409100e6aa')
;
-- Oct 6, 2022, 4:19:20 PM CEST
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','Before {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:19:20','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:19:20','YYYY-MM-DD HH24:MI:SS'),100,200791,'BeforeDate','D','280bb6a6-0d19-4c54-946c-d60b712093b6')
;
-- Oct 6, 2022, 4:20:06 PM CEST
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','On {0}',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:20:06','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:20:06','YYYY-MM-DD HH24:MI:SS'),100,200792,'OnDate','D','f229dfef-7775-450f-be84-dc84c13ea7ff')
;
-- Oct 6, 2022, 4:21:16 PM CEST
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','Update Filter',0,0,'Y',TO_TIMESTAMP('2022-10-06 16:21:15','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-06 16:21:15','YYYY-MM-DD HH24:MI:SS'),100,200793,'UpdateFilter','D','252c9784-e2ec-4cca-87b8-3a5d1b5b73e2')
;
-- Oct 6, 2022, 5:25:59 PM CEST
UPDATE AD_Ref_List SET Value='01',Updated=TO_TIMESTAMP('2022-10-06 17:25:59','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200561
;
-- Oct 6, 2022, 5:26:02 PM CEST
UPDATE AD_Ref_List SET Value='02',Updated=TO_TIMESTAMP('2022-10-06 17:26:02','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200562
;
-- Oct 6, 2022, 5:26:07 PM CEST
UPDATE AD_Ref_List SET Value='03',Updated=TO_TIMESTAMP('2022-10-06 17:26:07','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200563
;
-- Oct 6, 2022, 5:26:20 PM CEST
UPDATE AD_Ref_List SET Value='04',Updated=TO_TIMESTAMP('2022-10-06 17:26:20','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200564
;
-- Oct 6, 2022, 5:26:23 PM CEST
UPDATE AD_Ref_List SET Value='05',Updated=TO_TIMESTAMP('2022-10-06 17:26:23','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200565
;
-- Oct 6, 2022, 5:26:27 PM CEST
UPDATE AD_Ref_List SET Value='07',Updated=TO_TIMESTAMP('2022-10-06 17:26:27','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200567
;
-- Oct 6, 2022, 5:26:39 PM CEST
UPDATE AD_Ref_List SET Value='06',Updated=TO_TIMESTAMP('2022-10-06 17:26:39','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Ref_List_ID=200566
;
-- Oct 6, 2022, 5:31:25 PM CEST
UPDATE AD_Reference SET IsOrderByValue='Y',Updated=TO_TIMESTAMP('2022-10-06 17:31:25','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Reference_ID=200217
;
-- Oct 7, 2022, 4:45:08 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200568,'Quick',200217,'08',0,0,'Y',TO_TIMESTAMP('2022-10-07 16:45:07','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-07 16:45:07','YYYY-MM-DD HH24:MI:SS'),100,'D','b7e5adb3-b9ce-4bae-bd19-8c8e60413d18')
;
-- Oct 11, 2022, 3:21:59 PM CEST
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 (200221,'Months','L',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:21:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:21:59','YYYY-MM-DD HH24:MI:SS'),100,'D','N','bbabc9d6-241d-4cb9-b5b5-2b02e37abdf1')
;
-- Oct 11, 2022, 3:22:32 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200600,'January',200221,'01',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:32','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:32','YYYY-MM-DD HH24:MI:SS'),100,'D','d4575089-ba8d-4438-84e7-9e0ef0381f3e')
;
-- Oct 11, 2022, 3:22:41 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200601,'February',200221,'02',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:40','YYYY-MM-DD HH24:MI:SS'),100,'D','d553098d-4e18-490c-ba35-3735e0546a77')
;
-- Oct 11, 2022, 3:22:55 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200602,'March',200221,'03',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:22:55','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:22:55','YYYY-MM-DD HH24:MI:SS'),100,'D','7be305ae-1774-4200-b30d-8c62b896759c')
;
-- Oct 11, 2022, 3:23:04 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200603,'April',200221,'04',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:03','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:03','YYYY-MM-DD HH24:MI:SS'),100,'D','f612d5c5-89d7-4abe-8f6b-387587a35386')
;
-- Oct 11, 2022, 3:23:11 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200604,'May',200221,'05',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:11','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:11','YYYY-MM-DD HH24:MI:SS'),100,'D','50bbeb15-5ad4-490d-86a9-c3a892ca8ee8')
;
-- Oct 11, 2022, 3:23:19 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200605,'June',200221,'06',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:18','YYYY-MM-DD HH24:MI:SS'),100,'D','38a38a15-233e-43ab-86e5-1ce87416f7f9')
;
-- Oct 11, 2022, 3:23:27 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200606,'July',200221,'07',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:26','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:26','YYYY-MM-DD HH24:MI:SS'),100,'D','ea6cc9a3-80ca-439b-be9b-8bf261e0eeec')
;
-- Oct 11, 2022, 3:23:43 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200607,'August',200221,'08',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:23:43','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:23:43','YYYY-MM-DD HH24:MI:SS'),100,'D','d15ff0d4-0997-4f49-a49a-fb197a38b090')
;
-- Oct 11, 2022, 3:24:10 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200608,'September',200221,'09',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:10','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:10','YYYY-MM-DD HH24:MI:SS'),100,'D','289db278-fab8-43d6-a83d-621f1c0ef71d')
;
-- Oct 11, 2022, 3:24:18 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200609,'October',200221,'10',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:18','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:18','YYYY-MM-DD HH24:MI:SS'),100,'D','d9bcc45a-dcb1-4c2b-bc90-581ea527625d')
;
-- Oct 11, 2022, 3:24:25 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200610,'November',200221,'11',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:25','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:25','YYYY-MM-DD HH24:MI:SS'),100,'D','5d8b3451-0d70-4912-842d-dd19c40a681e')
;
-- Oct 11, 2022, 3:24:33 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200611,'December',200221,'12',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:33','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:33','YYYY-MM-DD HH24:MI:SS'),100,'D','01cdce86-aa1b-4b80-9849-bc2df988ad4c')
;
-- Oct 11, 2022, 3:24:41 PM CEST
UPDATE AD_Reference SET IsOrderByValue='Y',Updated=TO_TIMESTAMP('2022-10-11 15:24:41','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Reference_ID=200221
;
-- Oct 11, 2022, 3:24:53 PM CEST
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 (200222,'Quarters','L',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:24:52','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:24:52','YYYY-MM-DD HH24:MI:SS'),100,'D','Y','c045f9d5-379c-490f-b96d-920c5ac59d50')
;
-- Oct 11, 2022, 3:25:08 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200612,'First Quarter',200222,'01',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:08','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:08','YYYY-MM-DD HH24:MI:SS'),100,'D','3d5d0b5c-2239-41f9-ac3b-5f6f931357c3')
;
-- Oct 11, 2022, 3:25:18 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200613,'Second Quarter',200222,'02',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:17','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:17','YYYY-MM-DD HH24:MI:SS'),100,'D','417f6b55-1451-4f85-bfbf-7fa3153a5473')
;
-- Oct 11, 2022, 3:25:27 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200614,'Third Quarter',200222,'03',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:27','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:27','YYYY-MM-DD HH24:MI:SS'),100,'D','d984daa5-7b2b-4233-8860-a03ee0e72c7c')
;
-- Oct 11, 2022, 3:25:35 PM CEST
INSERT INTO AD_Ref_List (AD_Ref_List_ID,Name,AD_Reference_ID,Value,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,EntityType,AD_Ref_List_UU) VALUES (200615,'Fourth Quarter',200222,'04',0,0,'Y',TO_TIMESTAMP('2022-10-11 15:25:34','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 15:25:34','YYYY-MM-DD HH24:MI:SS'),100,'D','95ecec3c-9829-488a-b376-d7af83ba9448')
;
-- Oct 11, 2022, 4:51:05 PM CEST
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','Current Year Months',0,0,'Y',TO_TIMESTAMP('2022-10-11 16:51:05','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 16:51:05','YYYY-MM-DD HH24:MI:SS'),100,200794,'CurrentYearMonths','D','6bd493c4-79a8-4a50-8eb0-c45b4a58bfa6')
;
-- Oct 11, 2022, 4:51:30 PM CEST
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','Current Year Quarters',0,0,'Y',TO_TIMESTAMP('2022-10-11 16:51:30','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 16:51:30','YYYY-MM-DD HH24:MI:SS'),100,200795,'CurrentYearQuarters','D','83a2c54d-6282-4a05-a016-19da13fdf681')
;
-- Oct 11, 2022, 5:00:16 PM CEST
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','Selected Time Range',0,0,'Y',TO_TIMESTAMP('2022-10-11 17:00:16','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-11 17:00:16','YYYY-MM-DD HH24:MI:SS'),100,200796,'SelectedTimeRange','D','16d9cce7-fff1-4375-8bbb-af300c3c1a18')
;

View File

@ -0,0 +1,15 @@
-- IDEMPIERE-5443
SELECT register_migration_script('202210251555_IDEMPIERE-5443.sql') FROM dual;
-- Oct 25, 2022, 3:55:13 PM CEST
UPDATE AD_Message SET MsgText='Range',Updated=TO_TIMESTAMP('2022-10-25 15:55:13','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Message_ID=200796
;
-- Oct 25, 2022, 3:55:43 PM CEST
UPDATE AD_Message SET MsgText='Apply', Value='ApplyFilter',Updated=TO_TIMESTAMP('2022-10-25 15:55:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Message_ID=200793
;
-- Oct 25, 2022, 4:15:00 PM CEST
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','End Date must be after Start Date',0,0,'Y',TO_TIMESTAMP('2022-10-25 16:14:59','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-10-25 16:14:59','YYYY-MM-DD HH24:MI:SS'),100,200797,'EndDateAfterStartDate','D','9d7aa27f-ec1f-407f-bbf0-6659885c7b80')
;

View File

@ -49,6 +49,7 @@ import org.adempiere.webui.event.ValueChangeEvent;
import org.adempiere.webui.event.ValueChangeListener; import org.adempiere.webui.event.ValueChangeListener;
import org.adempiere.webui.session.SessionManager; import org.adempiere.webui.session.SessionManager;
import org.adempiere.webui.util.ZKUpdateUtil; import org.adempiere.webui.util.ZKUpdateUtil;
import org.adempiere.webui.window.DateRangeButton;
import org.adempiere.webui.window.Dialog; import org.adempiere.webui.window.Dialog;
import org.compiere.apps.IProcessParameter; import org.compiere.apps.IProcessParameter;
import org.compiere.model.GridField; import org.compiere.model.GridField;
@ -463,6 +464,11 @@ public class ProcessParameterPanel extends Panel implements
box.appendChild(separator); box.appendChild(separator);
box.appendChild(editor2.getComponent()); box.appendChild(editor2.getComponent());
row.appendChild(box); row.appendChild(box);
if (((mField.getDisplayType() == DisplayType.Date) || (mField.getDisplayType() == DisplayType.DateTime))
&& ((mField2.getDisplayType() == DisplayType.Date) || (mField2.getDisplayType() == DisplayType.DateTime))) {
DateRangeButton dateRangeButton = new DateRangeButton(editor, editor2);
box.appendChild(dateRangeButton);
}
} else { } else {
row.appendChild(editor.getComponent()); row.appendChild(editor.getComponent());
m_mFields2.add(null); m_mFields2.add(null);

View File

@ -21,6 +21,7 @@ import java.awt.Color;
import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener; import java.beans.PropertyChangeListener;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List;
import java.util.Properties; import java.util.Properties;
import org.adempiere.webui.AdempiereWebUI; import org.adempiere.webui.AdempiereWebUI;
@ -107,6 +108,8 @@ public abstract class WEditor implements EventListener<Event>, PropertyChangeLis
private String sValidInput; private String sValidInput;
private final List<DynamicDisplayListener> dynamicDisplayListeners = new ArrayList<>();
/** /**
* call to show context menu of this field. * call to show context menu of this field.
* must call after append component of this field to parent * must call after append component of this field to parent
@ -496,7 +499,17 @@ public abstract class WEditor implements EventListener<Event>, PropertyChangeLis
*/ */
public void setVisible(boolean visible) public void setVisible(boolean visible)
{ {
label.setVisible(visible); this.setVisible(visible, visible);
}
/**
*
* @param visible
* @param labelVisible
*/
public void setVisible(boolean visible, boolean labelVisible)
{
label.setVisible(labelVisible);
component.setVisible(visible); component.setVisible(visible);
} }
@ -608,6 +621,9 @@ public abstract class WEditor implements EventListener<Event>, PropertyChangeLis
{ {
updateStyle(); updateStyle();
} }
if (!dynamicDisplayListeners.isEmpty())
dynamicDisplayListeners.stream().forEach(e -> e.onDynamicDisplay(ctx, this));
} }
public void updateStyle(boolean applyDictionaryStyle) { public void updateStyle(boolean applyDictionaryStyle) {
@ -964,4 +980,33 @@ public abstract class WEditor implements EventListener<Event>, PropertyChangeLis
public boolean isValid(String input) { public boolean isValid(String input) {
return Util.isEmpty(sValidInput) ? true : sValidInput.equals(input); return Util.isEmpty(sValidInput) ? true : sValidInput.equals(input);
} }
/**
* add listener
* @param listener
*/
public void addDynamicDisplayListener(DynamicDisplayListener listener) {
dynamicDisplayListeners.add(listener);
}
/**
*
* @param listener
* @return true if listener is found and remove from listener list
*/
public boolean removeDynamicDisplayListener(DynamicDisplayListener listener) {
return dynamicDisplayListeners.remove(listener);
}
/**
* interface for dynamic display event
*/
public static interface DynamicDisplayListener {
/**
* call when editor's dynamicDisplay(ctx) method is call
* @param ctx
* @param editor
*/
void onDynamicDisplay(Properties ctx, WEditor editor);
}
} }

View File

@ -0,0 +1,87 @@
/**********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* 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., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Peter Takacs, Cloudempiere *
**********************************************************************/
package org.adempiere.webui.window;
import java.util.Properties;
import org.adempiere.webui.LayoutUtils;
import org.adempiere.webui.component.ToolBarButton;
import org.adempiere.webui.editor.WEditor;
import org.adempiere.webui.theme.ThemeManager;
import org.compiere.util.Env;
import org.zkoss.zk.ui.event.Events;
/**
*
* @author Peter Takacs, Cloudempiere
*
*/
public class DateRangeButton extends ToolBarButton implements WEditor.DynamicDisplayListener {
/**
*
*/
private static final long serialVersionUID = -4404182204288841866L;
private static final String IMAGES_CONTEXT_HISTORY_PNG = "images/History16.png";
private WEditor editor;
private WEditor editor2;
/**
* Constructor
*/
public DateRangeButton(WEditor editor, WEditor editor2) {
super();
this.editor = editor;
this.editor2 = editor2;
init();
}
private void init() {
if (ThemeManager.isUseFontIconForImage())
setIconSclass("z-icon-History");
else
setImage(ThemeManager.getThemeResource(IMAGES_CONTEXT_HISTORY_PNG));
DateRangePicker popup = new DateRangePicker(editor, editor2);
this.setTooltip(popup);
this.addEventListener(Events.ON_CLICK, event -> {
popup.setPage(this.getPage());
popup.open(this, "after_center");
LayoutUtils.autoDetachOnClose(popup);
});
editor.addDynamicDisplayListener(this);
onDynamicDisplay(Env.getCtx(), editor);
}
@Override
public void onDynamicDisplay(Properties ctx, WEditor editor) {
setVisible(this.editor.isVisible() && editor2.isVisible());
setDisabled(!(this.editor.isReadWrite() && editor2.isReadWrite()));
}
}

View File

@ -0,0 +1,690 @@
/**********************************************************************
* This file is part of iDempiere ERP Open Source *
* http://www.idempiere.org *
* *
* Copyright (C) Contributors *
* *
* This program is free software; you can redistribute it and/or *
* modify it under the terms of the GNU General Public License *
* as published by the Free Software Foundation; either version 2 *
* of the License, or (at your option) any later version. *
* *
* 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., 51 Franklin Street, Fifth Floor, Boston, *
* MA 02110-1301, USA. *
* *
* Contributors: *
* - Peter Takacs, Cloudempiere *
**********************************************************************/
package org.adempiere.webui.window;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import org.adempiere.exceptions.AdempiereException;
import org.adempiere.webui.component.Button;
import org.adempiere.webui.component.ComboItem;
import org.adempiere.webui.component.Combobox;
import org.adempiere.webui.component.Label;
import org.adempiere.webui.component.ListItem;
import org.adempiere.webui.component.Listbox;
import org.adempiere.webui.component.Textbox;
import org.adempiere.webui.editor.WEditor;
import org.adempiere.webui.factory.ButtonFactory;
import org.compiere.model.MChart;
import org.compiere.model.MRefList;
import org.compiere.util.DisplayType;
import org.compiere.util.Env;
import org.compiere.util.Msg;
import org.compiere.util.Util;
import org.compiere.util.ValueNamePair;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.WrongValueException;
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.InputEvent;
import org.zkoss.zul.Div;
import org.zkoss.zul.Popup;
import org.zkoss.zul.Spinner;
/**
*
* @author Peter Takacs, Cloudempiere
*
*/
public class DateRangePicker extends Popup implements EventListener<Event> {
/**
*
*/
private static final long serialVersionUID = -7959690713224781610L;
// AD_Reference_ID
private static final int REFERENCE_TIMEUNIT = 53376;
private static final int REFERENCE_DATESELECTIONMODE = 200217;
private static final int REFERENCE_MONTHS = 200221;
private static final int REFERENCE_QUARTERS = 200222;
private static final String DATESELECTIONMODE_PREVIOUS = "01";
private static final String DATESELECTIONMODE_NEXT = "02";
private static final String DATESELECTIONMODE_CURRENT = "03";
private static final String DATESELECTIONMODE_BEFORE = "04";
private static final String DATESELECTIONMODE_AFTER = "05";
private static final String DATESELECTIONMODE_ON = "06";
private static final String DATESELECTIONMODE_BETWEEN = "07";
private static final String DATESELECTIONMODE_QUICK = "08";
private Button okBtn;
private Combobox modeCombobox;
private Spinner numberBox;
private Combobox unitCombobox;
private Textbox dateTextBox;
private org.zkoss.zul.Calendar cal;
private org.zkoss.zul.Calendar cal2;
private Div quickListBoxes;
private WEditor editor;
private WEditor editor2;
private Date dateFrom;
private Date dateTo;
private Date oldValueFrom;
private Date oldValueTo;
private ArrayList<Listbox> quickListBoxesArray = new ArrayList<Listbox>();
private ListItem selectedQuickListItem;
/**
* Constructor
*/
public DateRangePicker(WEditor editor, WEditor editor2) {
super();
this.editor = editor;
this.editor2 = editor2;
init();
}
private void init() {
Div div = new Div();
okBtn = ButtonFactory.createNamedButton(Msg.getMsg(Env.getCtx(), "ApplyFilter"), true, false);
okBtn.setStyle("color: white; background: #A9A9A9; float: right;");
modeCombobox = new Combobox();
modeCombobox.setSclass("date-picker-component");
modeCombobox.setWidth("90px");
modeCombobox.addEventListener(Events.ON_SELECT, this);
numberBox = new Spinner(1);
numberBox.setConstraint("no empty, min 1");
numberBox.setStyle("margin: 5px;");
numberBox.addEventListener(Events.ON_CHANGING, this);
unitCombobox = new Combobox();
unitCombobox.setSclass("date-picker-component");
unitCombobox.setWidth("90px");
unitCombobox.addEventListener(Events.ON_SELECT, this);
cal = new org.zkoss.zul.Calendar();
cal.setSclass("date-picker-component");
cal.addEventListener(Events.ON_CHANGE, this);
cal2 = new org.zkoss.zul.Calendar();
cal2.setSclass("date-picker-component");
cal2.addEventListener(Events.ON_CHANGE, this);
Label dateTextBoxLabel = new Label(Msg.getMsg(Env.getCtx(), "SelectedTimeRange"));
dateTextBoxLabel.setSclass("date-picker-label");
dateTextBox = new Textbox();
dateTextBox.setSclass("date-picker-component");
dateTextBox.setStyle("min-width: 170px;");
dateTextBox.setValue(DisplayType.getDateFormat().format(cal.getValue()));
dateTextBox.addEventListener(Events.ON_CHANGE, this);
okBtn.setSclass("date-picker-component");
okBtn.addEventListener(Events.ON_CLICK, event -> {
if(dateFrom != null && dateTo != null && dateTo.before(dateFrom))
throw new WrongValueException(dateTextBox, Msg.getMsg(Env.getCtx(), "EndDateAfterStartDate"));
setTimesOnDates();
if(Util.isEmpty(dateTextBox.getValue())) {
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = null;
dateTo = null;
}
editor.setValue(dateFrom);
editor2.setValue(dateTo);
this.detach();
});
quickListBoxes = new Div();
quickListBoxes.appendChild(getQuickModeContent());
// Load Modes to ListBox
ComboItem selectedOnOpen = null;
ValueNamePair[] modes = MRefList.getList(Env.getCtx(), REFERENCE_DATESELECTIONMODE, false, "Value");
for(ValueNamePair mode : modes) {
ComboItem item = new ComboItem(mode.getName(), mode.getValue());
if(mode.getValue().equalsIgnoreCase(DATESELECTIONMODE_CURRENT))
selectedOnOpen = item;
modeCombobox.appendChild(item);
}
if(selectedOnOpen != null)
modeCombobox.setSelectedItem(selectedOnOpen);
else
modeCombobox.setSelectedIndex(0);
// Load Units to ListBox
ValueNamePair[] units = MRefList.getList(Env.getCtx(), REFERENCE_TIMEUNIT, false);
for(ValueNamePair timeUnit : units) {
ComboItem item = new ComboItem(timeUnit.getName(), timeUnit.getValue());
if(timeUnit.getValue().equalsIgnoreCase(MChart.TIMEUNIT_Month))
selectedOnOpen = item;
unitCombobox.appendChild(item);
}
if(selectedOnOpen != null)
unitCombobox.setSelectedItem(selectedOnOpen);
else
modeCombobox.setSelectedIndex(0);
div.setSclass("date-picker-container");
div.appendChild(modeCombobox);
div.appendChild(numberBox);
div.appendChild(unitCombobox);
this.appendChild(div);
div = new Div();
div.setSclass("date-picker-container");
div.setStyle("Margin-top: 10px;");
div.appendChild(cal);
div.appendChild(cal2);
div.appendChild(quickListBoxes);
this.appendChild(div);
div = new Div();
div.setSclass("date-picker-container");
div.setStyle("margin: 10px 0 10px 0;");
div.appendChild(dateTextBoxLabel);
div.appendChild(dateTextBox);
div.setSclass("date-picker-container");
div.appendChild(okBtn);
this.appendChild(div);
this.setStyle("min-width: 320px;");
updateUI();
setDisplayValue();
}
private void updateUI() {
String selectedMode = modeCombobox.getSelectedItem().getValue().toString();
switch (selectedMode) {
case DATESELECTIONMODE_AFTER:
case DATESELECTIONMODE_BEFORE:
case DATESELECTIONMODE_ON:
numberBox.setVisible(false);
unitCombobox.setVisible(false);
cal.setVisible(true);
cal2.setVisible(false);
quickListBoxes.setVisible(false);
break;
case DATESELECTIONMODE_BETWEEN:
numberBox.setVisible(false);
unitCombobox.setVisible(false);
cal.setVisible(true);
cal2.setVisible(true);
quickListBoxes.setVisible(false);
break;
case DATESELECTIONMODE_CURRENT:
numberBox.setVisible(false);
unitCombobox.setVisible(true);
cal.setVisible(false);
cal2.setVisible(false);
quickListBoxes.setVisible(false);
break;
case DATESELECTIONMODE_NEXT:
case DATESELECTIONMODE_PREVIOUS:
numberBox.setVisible(true);
unitCombobox.setVisible(true);
cal.setVisible(false);
cal2.setVisible(false);
quickListBoxes.setVisible(false);
break;
case DATESELECTIONMODE_QUICK:
numberBox.setVisible(false);
unitCombobox.setVisible(false);
cal.setVisible(false);
cal2.setVisible(false);
quickListBoxes.setVisible(true);
break;
default:
break;
}
}
@Override
public void onEvent(Event event) throws Exception {
Component target = event.getTarget();
if(target.equals(modeCombobox))
updateUI();
if(target instanceof Listbox) {
for(Listbox listBox : quickListBoxesArray) {
if(!target.equals(listBox))
listBox.setSelectedItem(null);
else
selectedQuickListItem = listBox.getSelectedItem();
}
}
if(target instanceof Spinner) {
String actValue = String.valueOf(((InputEvent)event).getValue());
if(!Util.isEmpty(actValue))
numberBox.setValue(Integer.valueOf(actValue));
}
dateTextBox.clearErrorMessage();
if(!Util.isEmpty(dateTextBox.getValue()) || !event.getTarget().equals(dateTextBox))
setDisplayValue();
}
private void setDisplayValue() {
String displayValue = getDisplayValue();
dateTextBox.setValue(displayValue);
}
private String getDisplayValue() {
String returnVal = "";
Timestamp ts = new Timestamp(cal.getValue().getTime());
switch (modeCombobox.getSelectedItem().getValue().toString()) {
case DATESELECTIONMODE_AFTER:
returnVal = Msg.getMsg(Env.getCtx(), "AfterDate", new Object[] {DisplayType.getDateFormat().format(ts)});
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = ts;
dateTo = null;
break;
case DATESELECTIONMODE_BEFORE:
returnVal = Msg.getMsg(Env.getCtx(), "BeforeDate", new Object[] {DisplayType.getDateFormat().format(ts)});
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = null;
dateTo = ts;
break;
case DATESELECTIONMODE_BETWEEN:
returnVal = DisplayType.getDateFormat().format(cal.getValue()) + " - " + DisplayType.getDateFormat().format(cal2.getValue());
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = new Timestamp(cal.getValue().getTime());
dateTo = new Timestamp(cal2.getValue().getTime());
break;
case DATESELECTIONMODE_CURRENT:
case DATESELECTIONMODE_NEXT:
case DATESELECTIONMODE_PREVIOUS:
returnVal = getInterval();
break;
case DATESELECTIONMODE_ON:
returnVal = Msg.getMsg(Env.getCtx(), "OnDate", new Object[] {DisplayType.getDateFormat().format(ts)});
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = ts;
dateTo = ts;
break;
case DATESELECTIONMODE_QUICK:
if(selectedQuickListItem != null) {
String unit = (String) selectedQuickListItem.getAttribute("TimeUnit");
int offset = (int) selectedQuickListItem.getAttribute("Offset");
Date dateFrom = (Date) selectedQuickListItem.getAttribute("DateFrom");
Date[] dates = getInterval(unit, unit, offset, false, false, dateFrom);
this.oldValueFrom = this.dateFrom;
this.oldValueTo = this.dateTo;
this.dateFrom = new Timestamp(dates[0].getTime());
this.dateTo = new Timestamp(dates[1].getTime());
returnVal = DisplayType.getDateFormat().format(this.dateFrom) + " - " + DisplayType.getDateFormat().format(this.dateTo);
}
break;
default:
throw new AdempiereException("InvalidDateSelectionMode");
}
return returnVal;
}
private String getInterval() {
String mode = modeCombobox.getSelectedItem().getValue().toString();
String unit = unitCombobox.getSelectedItem().getValue().toString();
Integer numBoxValue = numberBox.getValue();
Date[] dates;
if(numBoxValue == null) {
numBoxValue = 0;
numberBox.setValue(numBoxValue);
}
if(mode.equalsIgnoreCase(DATESELECTIONMODE_PREVIOUS))
numBoxValue = -numBoxValue;
if(mode.equalsIgnoreCase(DATESELECTIONMODE_CURRENT))
dates = getInterval(unit, 0);
else
dates = getInterval(unit, numBoxValue.intValue());
oldValueFrom = dateFrom;
oldValueTo = dateTo;
dateFrom = new Timestamp(dates[0].getTime());
dateTo = new Timestamp(dates[1].getTime());
return DisplayType.getDateFormat().format(dateFrom) + " - " + DisplayType.getDateFormat().format(dateTo);
}
private Date[] getInterval(String timeUnit, int offset) {
return getInterval(timeUnit, null, offset, false, false, null);
}
private Date[] getInterval(String timeUnit, String timeUnitForRange, int offset, boolean isToDate, boolean includeThis, Date dateFrom) {
if(dateFrom == null)
dateFrom = new Date(System.currentTimeMillis());
Calendar cal1 = Calendar.getInstance(Env.getLocale(Env.getCtx()));
Calendar cal2 = Calendar.getInstance(Env.getLocale(Env.getCtx()));
cal1.setTime(dateFrom);
cal2.setTime(dateFrom);
int iUnit;
int iDayUnit;
// Transform Time Unit
switch (timeUnit) {
case MChart.TIMEUNIT_Day:
iUnit = Calendar.DAY_OF_YEAR;
iDayUnit = Calendar.DAY_OF_YEAR;
break;
case MChart.TIMEUNIT_Month:
iUnit = Calendar.MONTH;
iDayUnit = Calendar.DAY_OF_MONTH;
break;
case MChart.TIMEUNIT_Quarter:
iUnit = Calendar.MONTH;
iDayUnit = Calendar.DAY_OF_MONTH;
offset = offset * 3;
break;
case MChart.TIMEUNIT_Week:
iUnit = Calendar.WEEK_OF_YEAR;
iDayUnit = Calendar.DAY_OF_WEEK;
break;
case MChart.TIMEUNIT_Year:
iUnit = Calendar.YEAR;
iDayUnit = Calendar.DAY_OF_YEAR;
break;
default:
throw new AdempiereException("TimeUnitNotSupported");
}
if(!Util.isEmpty(timeUnitForRange) || !isToDate){
boolean hasTimeUnitForRange = true;
// Set first and last Day of the given time period
if(Util.isEmpty(timeUnitForRange)) {
timeUnitForRange = timeUnit;
hasTimeUnitForRange = false;
}
if(timeUnitForRange.equalsIgnoreCase(MChart.TIMEUNIT_Week)) {
cal1.set(iDayUnit, cal1.getFirstDayOfWeek());
cal2.set(iDayUnit, cal2.getFirstDayOfWeek());
cal2.add(iDayUnit, 6);
}
else if(timeUnitForRange.equalsIgnoreCase(MChart.TIMEUNIT_Quarter)){
if(cal1.after(new GregorianCalendar(cal1.get(Calendar.YEAR), Calendar.OCTOBER, 1))) {
cal1.set(Calendar.MONTH, Calendar.OCTOBER);
cal2.set(Calendar.MONTH, Calendar.DECEMBER);
}
else if(cal1.after(new GregorianCalendar(cal1.get(Calendar.YEAR), Calendar.JULY, 1))) {
cal1.set(Calendar.MONTH, Calendar.JULY);
cal2.set(Calendar.MONTH, Calendar.SEPTEMBER);
}
else if(cal1.after(new GregorianCalendar(cal1.get(Calendar.YEAR), Calendar.APRIL, 1))) {
cal1.set(Calendar.MONTH, Calendar.APRIL);
cal2.set(Calendar.MONTH, Calendar.JUNE);
}
else {
cal1.set(Calendar.MONTH, Calendar.JANUARY);
cal2.set(Calendar.MONTH, Calendar.MARCH);
}
cal1.set(Calendar.DAY_OF_MONTH, cal1.getActualMinimum(iDayUnit));
cal2.set(Calendar.DAY_OF_MONTH, cal2.getActualMaximum(Calendar.DAY_OF_MONTH));
}
else if (!timeUnitForRange.equalsIgnoreCase(MChart.TIMEUNIT_Day)) {
cal1.set(iDayUnit, cal1.getActualMinimum(iDayUnit));
cal2.set(iDayUnit, cal2.getActualMaximum(iDayUnit));
}
// Add the offset
if(hasTimeUnitForRange && offset != 0) {
cal1.add(iUnit, offset);
cal2.add(iUnit, offset);
}
else if(!hasTimeUnitForRange && !isToDate) {
if(offset < 0) {
cal1.add(iUnit, offset);
if(!includeThis) {
if(timeUnitForRange.equalsIgnoreCase(MChart.TIMEUNIT_Quarter))
cal2.add(iUnit, -3);
else
cal2.add(iUnit, -1);
}
}
else if (offset > 0) {
if(!includeThis) {
if(timeUnitForRange.equalsIgnoreCase(MChart.TIMEUNIT_Quarter))
cal1.add(iUnit, 3);
else
cal1.add(iUnit, 1);
}
cal2.add(iUnit, offset);
}
}
}
else if(isToDate) {
if(offset < 0)
cal1.add(iUnit, offset);
else if (offset > 0)
cal2.add(iUnit, offset);
}
Date date1 = cal1.getTime();
Date date2 = cal2.getTime();
return new Date[] {date1, date2};
}
private void setTimesOnDates() {
Calendar cal = Calendar.getInstance(Env.getLocale(Env.getCtx()));
if(dateFrom != null) {
cal.setTime(dateFrom);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
dateFrom = new Timestamp(cal.getTime().getTime());
}
if(dateTo != null) {
cal.setTime(dateTo);
cal.set(Calendar.HOUR_OF_DAY, 0);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0);
cal.set(Calendar.MILLISECOND, 0);
cal.add(Calendar.DAY_OF_MONTH, 1);
cal.add(Calendar.MILLISECOND, -1);
dateTo = new Timestamp(cal.getTime().getTime());
}
}
private ListItem createItem(String value, String timeUnit, int offset, Date dateFrom) {
ListItem item = new ListItem(value, value);
item.setAttribute("Offset", offset);
item.setAttribute("TimeUnit", timeUnit);
item.setAttribute("DateFrom", dateFrom);
return item;
}
private Div getQuickModeContent() {
Calendar cNow = Calendar.getInstance(Env.getLocale(Env.getCtx()));
cNow.setTime(new Date(System.currentTimeMillis()));
Calendar c = Calendar.getInstance(Env.getLocale(Env.getCtx()));
c.setTime(new Date(System.currentTimeMillis()));
Div wrapperDiv1 = new Div();
wrapperDiv1.setStyle("max-width: 420px; display: flex; border-top: 2px solid #CFCFCF;");
// Months
Div wrapperDiv2 = new Div();
wrapperDiv2.setStyle("max-width: 420px; display: flex;");
Label label = new Label(Msg.getMsg(Env.getCtx(), "CurrentYearMonths"));
label.setSclass("date-picker-label");
Div monthLabelDiv = new Div();
monthLabelDiv.setStyle("margin-top: 10px;");
monthLabelDiv.appendChild(label);
c = cNow;
int idx=0;
int monthIdx = Calendar.APRIL;
ListItem item;
Listbox box;
Div innerDiv;
while (monthIdx <= Calendar.DECEMBER) {
innerDiv = new Div();
innerDiv.setSclass("date-picker-component");
innerDiv.setStyle("margin: 5px 5px 16px 5px !important;");
box = new Listbox();
box.addEventListener(Events.ON_SELECT, this);
box.setCheckmark(true);
ValueNamePair[] months = MRefList.getList(Env.getCtx(), REFERENCE_MONTHS, false, "Value");
for(int i = idx; i <= monthIdx; i++) {
c.set(Calendar.MONTH, i);
item = createItem(months[i].getName(), MChart.TIMEUNIT_Month, 0, new Date(c.getTimeInMillis()));
box.appendChild(item);
idx=i;
}
innerDiv.appendChild(box);
quickListBoxesArray.add(box);
wrapperDiv1.appendChild(innerDiv);
idx++;
monthIdx += 4;
}
// Quarters
c = cNow;
innerDiv = new Div();
innerDiv.setSclass("date-picker-component");
label = new Label(Msg.getMsg(Env.getCtx(), "CurrentYearQuarters"));
label.setSclass("date-picker-label");
innerDiv.appendChild(label);
box = new Listbox();
box.setStyle("border-top: 2px solid #CFCFCF;");
box.addEventListener(Events.ON_SELECT, this);
box.setCheckmark(true);
ValueNamePair[] quarters = MRefList.getList(Env.getCtx(), REFERENCE_QUARTERS, false, "Value");
idx = 0;
for(ValueNamePair quarter : quarters) {
c.set(Calendar.MONTH, idx);
item = createItem(quarter.getName(), MChart.TIMEUNIT_Quarter, 0, new Date(c.getTimeInMillis()));
box.appendChild(item);
idx+=3;
}
innerDiv.appendChild(box);
quickListBoxesArray.add(box);
wrapperDiv2.appendChild(innerDiv);
// Year
innerDiv = new Div();
innerDiv.setSclass("date-picker-component");
label = new Label(Msg.getMsg(Env.getCtx(), "Year"));
label.setSclass("date-picker-label");
innerDiv.appendChild(label);
box = new Listbox();
box.setStyle("border-top: 2px solid #CFCFCF;");
box.addEventListener(Events.ON_SELECT, this);
box.setCheckmark(true);
for(int i=0; i>=-3; i--) {
item = createItem(String.valueOf(c.get(Calendar.YEAR)), MChart.TIMEUNIT_Year, i, null);
box.appendChild(item);
c.add(Calendar.YEAR, -1);
}
innerDiv.appendChild(box);
quickListBoxesArray.add(box);
wrapperDiv2.appendChild(innerDiv);
Div div = new Div();
div.appendChild(monthLabelDiv);
div.appendChild(wrapperDiv1);
div.appendChild(wrapperDiv2);
return div;
}
/**
* Get Date Textbox
* @return Textbox
*/
public Textbox getDateTextbox() {
return dateTextBox;
}
/**
* Get Update Button
* @return Button
*/
public Button getUpdateButton() {
return okBtn;
}
/**
* Get Value From
* @return
*/
public Date getValueFrom() {
return dateFrom;
}
/**
* Get Old Value From
* @return
*/
public Date getOldValueFrom() {
return oldValueFrom;
}
/**
* Get Value To
* @return
*/
public Date getValueTo() {
return dateTo;
}
/**
* Get Old Value To
* @return
*/
public Date getOldValueTo() {
return oldValueTo;
}
}

View File

@ -1218,26 +1218,50 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
String tableName = listTable != null && listTable.getSelectedItem() != null ? listTable.getSelectedItem().getValue() : m_tableName; String tableName = listTable != null && listTable.getSelectedItem() != null ? listTable.getSelectedItem().getValue() : m_tableName;
if (columnName == null || columnName == "") if (columnName == null || columnName == "")
return; return;
WEditor editorFrom = null;
String value = fields.length > INDEX_VALUE ? fields[INDEX_VALUE] : ""; String value = fields.length > INDEX_VALUE ? fields[INDEX_VALUE] : "";
if(value.length() > 0) if(value.length() > 0)
{ {
cellQueryFrom.setAttribute("value", value); // Elaine 2009/03/16 - set attribute value cellQueryFrom.setAttribute("value", value); // Elaine 2009/03/16 - set attribute value
//Attribute Values Parsing //Attribute Values Parsing
if(tableName.equals(MAttribute.COLUMNNAME_M_Attribute_ID)) if(tableName.equals(MAttribute.COLUMNNAME_M_Attribute_ID))
{
cellQueryFrom.appendChild(parseAttributeString( Integer.valueOf(columnName), value, listItem, false)); cellQueryFrom.appendChild(parseAttributeString( Integer.valueOf(columnName), value, listItem, false));
}
else else
cellQueryFrom.appendChild(parseString(getTargetMField(columnName), value, listItem, false)); {
editorFrom = parseString(getTargetMField(columnName), value, listItem, false);
if (editorFrom != null)
cellQueryFrom.appendChild(editorFrom.getComponent());
}
} }
// QueryTo // QueryTo
WEditor editorTo = null;
String value2 = fields.length > INDEX_VALUE2 ? fields[INDEX_VALUE2] : ""; String value2 = fields.length > INDEX_VALUE2 ? fields[INDEX_VALUE2] : "";
if(value2.length() > 0) if(value2.length() > 0)
{ {
cellQueryTo.setAttribute("value", value2); // Elaine 2009/03/16 - set attribute value cellQueryTo.setAttribute("value", value2); // Elaine 2009/03/16 - set attribute value
// Attribute Parsing // Attribute Parsing
if(tableName.equals(MAttribute.COLUMNNAME_M_Attribute_ID)) if(tableName.equals(MAttribute.COLUMNNAME_M_Attribute_ID))
{
cellQueryTo.appendChild(parseAttributeString( Integer.valueOf(columnName), value2, listItem, true)); cellQueryTo.appendChild(parseAttributeString( Integer.valueOf(columnName), value2, listItem, true));
}
else else
cellQueryTo.appendChild(parseString(getTargetMField(columnName), value2, listItem, true)); {
editorTo = parseString(getTargetMField(columnName), value2, listItem, true);
if (editorTo != null)
{
if (editorFrom != null && editorFrom.getGridField() != null && DisplayType.isDate(editorFrom.getGridField().getDisplayType()))
{
Div div = createDateRangeWrapper(editorFrom, editorTo);
cellQueryTo.appendChild(div);
}
else
{
cellQueryTo.appendChild(editorTo.getComponent());
}
}
}
} }
// AndOr // AndOr
@ -1280,6 +1304,14 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
} // createFields } // createFields
private Div createDateRangeWrapper(WEditor editorFrom, WEditor editorTo) {
Div div = new Div();
div.setWidth("100%");
div.appendChild(editorTo.getComponent());
div.appendChild(new DateRangeButton(editorFrom, editorTo));
return div;
}
private void setValues(GridField[] findFields, Combobox listTable, Combobox listColumn, Combobox listOperator, String[] fields) private void setValues(GridField[] findFields, Combobox listTable, Combobox listColumn, Combobox listOperator, String[] fields)
{ {
ArrayList<ValueNamePair> tables = new ArrayList<ValueNamePair>(); ArrayList<ValueNamePair> tables = new ArrayList<ValueNamePair>();
@ -1562,13 +1594,17 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
editorFlag.setMode("toggle"); editorFlag.setMode("toggle");
div.appendChild(editorFlag); div.appendChild(editorFlag);
div.appendChild(fieldEditorTo); div.appendChild(fieldEditorTo);
DateRangeButton drb = new DateRangeButton(editor, editorTo);
div.appendChild(drb);
fieldEditorTo.setVisible(false); fieldEditorTo.setVisible(false);
drb.setVisible(false);
final Component editorRef = fieldEditorTo; final Component editorRef = fieldEditorTo;
editorFlag.addEventListener(Events.ON_CHECK, new EventListener<Event>() { editorFlag.addEventListener(Events.ON_CHECK, new EventListener<Event>() {
@Override @Override
public void onEvent(Event event) throws Exception { public void onEvent(Event event) throws Exception {
ToolBarButton btn = (ToolBarButton) event.getTarget(); ToolBarButton btn = (ToolBarButton) event.getTarget();
editorRef.setVisible(btn.isChecked()); editorRef.setVisible(btn.isChecked());
drb.setVisible(editorRef.isVisible());
} }
}); });
m_sEditorsTo.add(editorTo); m_sEditorsTo.add(editorTo);
@ -1736,9 +1772,11 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
addRowEditor(componentTo,(ListCell)row.getFellow("cellQueryTo"+row.getId())); addRowEditor(componentTo,(ListCell)row.getFellow("cellQueryTo"+row.getId()));
} }
} else { } else {
Component componentFrom = getEditorCompQueryFrom(row); WEditor editorFrom = getEditor(row, false);
Component componentFrom = editorFrom != null ? editorFrom.getComponent() : new Label("");
componentFrom.setId("searchFieldFrom"+row.getId()); componentFrom.setId("searchFieldFrom"+row.getId());
Component componentTo = getEditorCompQueryTo(row); WEditor editorTo = getEditor(row, true);
Component componentTo = editorTo != null ? editorTo.getComponent() : new Label("");
componentTo.setId("searchFieldTo"+row.getId()); componentTo.setId("searchFieldTo"+row.getId());
Combobox listOp = (Combobox) row.getFellow("listOperator"+row.getId()); Combobox listOp = (Combobox) row.getFellow("listOperator"+row.getId());
String betweenValue = listOp.getSelectedItem() != null ? listOp.getSelectedItem().getValue().toString() : ""; String betweenValue = listOp.getSelectedItem() != null ? listOp.getSelectedItem().getValue().toString() : "";
@ -1752,10 +1790,18 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
else if (listbox.getId().equals(listColumn.getId()) || listbox.getId().equals(listOperator.getId())) else if (listbox.getId().equals(listColumn.getId()) || listbox.getId().equals(listOperator.getId()))
{ {
addRowEditor(componentFrom, (ListCell)row.getFellow("cellQueryFrom"+row.getId())); addRowEditor(componentFrom, (ListCell)row.getFellow("cellQueryFrom"+row.getId()));
if (editorTo != null && editorTo.getGridField() != null && DisplayType.isDate(editorTo.getGridField().getDisplayType()))
{
Div div = createDateRangeWrapper(editorFrom, editorTo);
addRowEditor(div,(ListCell)row.getFellow("cellQueryTo"+row.getId()));
}
else
{
addRowEditor(componentTo,(ListCell)row.getFellow("cellQueryTo"+row.getId())); addRowEditor(componentTo,(ListCell)row.getFellow("cellQueryTo"+row.getId()));
} }
} }
} }
}
else if (event.getTarget() instanceof Tab) { else if (event.getTarget() instanceof Tab) {
if (winMain.getComponent().getSelectedIndex() == 1) { if (winMain.getComponent().getSelectedIndex() == 1) {
onAdvanceTabSelected(); onAdvanceTabSelected();
@ -1987,11 +2033,11 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
* Parse String * Parse String
* @param field column * @param field column
* @param in value * @param in value
* @param to
* @param listItem * @param listItem
* @return data type corrected value * @param to
* @return WEditor
*/ */
private Component parseString(GridField field, String in, ListItem listItem, boolean to) private WEditor parseString(GridField field, String in, ListItem listItem, boolean to)
{ {
if (in == null) if (in == null)
return null; return null;
@ -2062,7 +2108,7 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
editor.setVisible(enabled); editor.setVisible(enabled);
editor.dynamicDisplay(); editor.dynamicDisplay();
return editor.getComponent(); return editor;
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -2257,6 +2303,11 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
//Allowing Date validation before save //Allowing Date validation before save
compo = cellQueryTo.getFirstChild(); compo = cellQueryTo.getFirstChild();
//check DateRangeButton wrapper div
if (compo instanceof Div) {
if (compo.getFirstChild() instanceof Datebox || compo.getFirstChild() instanceof DatetimeBox)
compo = compo.getFirstChild();
}
if(compo instanceof Datebox) { if(compo instanceof Datebox) {
Datebox dbox = (Datebox)compo; Datebox dbox = (Datebox)compo;
if(dbox.getValue() != null) if(dbox.getValue() != null)
@ -2602,26 +2653,6 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
} // getColumnName } // getColumnName
/**
* get editor component for 'query' field
* @param row row
* @return editor component
**/
private Component getEditorCompQueryFrom(ListItem row)
{
return getEditorComponent(row, false);
}
/**
* get editor component for 'query to' field
* @param row row
* @return editor component
**/
private Component getEditorCompQueryTo(ListItem row)
{
return getEditorComponent(row, true);
}
/** /**
* add the editor component in the 'QueryValue' field * add the editor component in the 'QueryValue' field
* @param component editor component * @param component editor component
@ -2710,7 +2741,7 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
* @param row row * @param row row
* @return Editor component * @return Editor component
**/ **/
public Component getEditorComponent(ListItem row, boolean to) public WEditor getEditor(ListItem row, boolean to)
{ {
String columnName = getColumnName(row); String columnName = getColumnName(row);
boolean between = false; boolean between = false;
@ -2725,7 +2756,7 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
// Create Editor // Create Editor
GridField field = getTargetMField(columnName); GridField field = getTargetMField(columnName);
if(field == null) return new Label(""); if(field == null) return null;
GridField findField = (GridField) field.clone(m_advanceCtx); GridField findField = (GridField) field.clone(m_advanceCtx);
findField.setGridTab(null); findField.setGridTab(null);
@ -2800,9 +2831,20 @@ public class FindWindow extends Window implements EventListener<Event>, ValueCha
row.setAttribute(FIND_ROW_EDITOR_TO, editor); row.setAttribute(FIND_ROW_EDITOR_TO, editor);
else else
row.setAttribute(FIND_ROW_EDITOR, editor); row.setAttribute(FIND_ROW_EDITOR, editor);
return editor.getComponent(); return editor;
} // getTableCellEditorComponent }
/**
* Get Editor
* @param row row
* @return Editor component
**/
public Component getEditorComponent(ListItem row, boolean to)
{
WEditor editor = getEditor(row, to);
return editor != null ? editor.getComponent() : new Label("");
}
/** /**
* Get Target MField * Get Target MField

View File

@ -133,3 +133,23 @@ input[type="checkbox"]:focus
color: #252525 !important; color: #252525 !important;
opacity: .8; opacity: .8;
} }
.date-picker-container {
padding-left: 5px;
}
.date-picker-component {
display: inline-grid;
min-height: 25px;
border-radius: 5px;
margin: 0px 5px 5px 0px !important;
}
.date-picker-component .z-listbox {
border: none;
}
.date-picker-label {
font-weight: bold;
margin: 5px;
}