Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

  • andyx1975
    replied
    Setting "timeline.setStartDate(getStartDate())" and uncomment "timeline.setEndDate(getEndDate())" let the table look like this:

    Click image for larger version

Name:	timeshift2.jpg
Views:	234
Size:	10.5 KB
ID:	236935

    Okay I try to create a standalone case, but thats not easy since I get the dates as json from a server.

    Leave a comment:


  • Isomorphic
    replied
    We're not really sure what you're getting at.

    If you have an issue, show a standalone testcase we can run and detail the steps we can take to see what you're seeing, versus what you expect to be seeing.

    Leave a comment:


  • andyx1975
    replied
    I have serious issues with this timeline... there really seems to be something wrong... when I uncomment "timeline.setStartDate(getStartDate())" and "timeline.setEndDate(getEndDate())" my timeline looks like this:

    Click image for larger version

Name:	timeshift.jpg
Views:	97
Size:	7.5 KB
ID:	236932

    Leave a comment:


  • andyx1975
    replied
    Hi,

    I tried latest Build from 12.04. and I am still having a timeshift of 2 hours in the timeline.


    Click image for larger version

Name:	timeShift.png
Views:	258
Size:	6.9 KB
ID:	236885

    My server submits the dates via Json as follows:
    "startDate":"2017-04-01T00:00:00.000","endDate":"2017-04-02T00:00:00.000"

    The above mentioned date will appear in the calendar as follows; Click image for larger version

Name:	date.png
Views:	113
Size:	3.0 KB
ID:	236891

    My browser time is GMT+0200... but adding a timezone is not wanted because those dates are 24h dates and always local time.


    Code:
            Timeline timeLine = new Timeline();
    
            // Gets DataSource
            timeLine.setDataSource( getDataSource() );
            timeLine.setAutoFetchData( true );
    
            timeLine.setShowEventDescriptions( true );
            timeLine.setShowQuickEventDialog( false );
            timeLine.setShowAddEventButton( false );
    
            timeLine.setCanCreateEvents( true );
            timeLine.setCanRemoveEvents( true );
            timeLine.setCanResizeEvents( false );
    
            // Sets Hover
            timeLine.setHoverWidth( 500 );
    
            // Activate weekends
            timeLine.setDisableWeekends( false );
            timeLine.setShowWeekends( true );
    
            // 60min x 24h (Ignore Time)
            timeLine.setEventSnapGap( ( 24 * 60 ) );
            timeLine.setAllowDurationEvents( true );
    
            // // Sets start and end date of calendar
            timeLine.setStartDate( getStartDate() );
            timeLine.setEndDate( getEndDate());
    
            // Sets lane field (first Columns)
            timeLine.setLaneFields( new ListGridField[] { new ListGridField( "title", "Name", 350 ) } );
    
            // Init Lanes
            timeLine.setLanes( getLanes() );
    
            // Sets the indicators
            timeLine.setShowIndicators( false );
            timeLine.setIndicators( getIndicators() );
    
            // Inits Calendar Header
            initHeaderLevels();
    
            // Can not move via drag & drop to another lane
            timeLine.setCanEditLane( false );
            timeLine.setCanReorderLanes( true );
            timeLine.setLaneEventPadding( 2 );
    Code:
    private DataSource getDataSource()
    {
            DataSource ds = new DataSource();
            ds.setDataURL( "rest/getTimeLine" );
            ds.setClientOnly( true );
            ds.setID( "timeline" + CParser.getRandomLetters( 5 ) );
            ds.setDataFormat( DSDataFormat.JSON );
    
            DataSourceSequenceField eventIdField = new DataSourceSequenceField( "eventId", "ID");
            eventIdField.setPrimaryKey( true );
    
            DataSourceDateTimeField startDateField = new DataSourceDateTimeField( "startDate" "Start" );
            DataSourceDateTimeField endDateField = new DataSourceDateTimeField( "endDate", "End");
            DataSourceTextField laneField = new DataSourceTextField( lane, "Lane" );
            DataSourceTextField nameField = new DataSourceTextField( name, "Name" );
            DataSourceTextField descField = new DataSourceTextField( description, "Description" );
    
            ds.setFields( eventIdField, nameField, descField, laneField, startDateField, endDateField );
    
            return ds;
    Attached Files
    Last edited by andyx1975; 12 Apr 2016, 10:21.

    Leave a comment:


  • Niels_EMP
    replied
    Awesome thanks

    Leave a comment:


  • Isomorphic
    replied
    Ok, we see it now - happily, it's not a problem with the overlapping mechanism itself - the offending event wasn't being put into any slot because it started in a field which was hidden - that one's fixed for tomorrow's builds, but a similar issue is present for events that *end* in hidden fields, or are drag-resized *over* hidden fields.

    We'll update again when we've ironed those out too.

    Leave a comment:


  • Niels_EMP
    replied
    I just tested again with SmartClient Version: v11.0p_2016-04-09/Pro Deployment (built 2016-04-09) and the problem is still there.

    As expected it seems to be timeline.setShowWeekends(false); that is causing the issue. The timeline looks fine when I show weekends.

    I am using Chrome Version 49.0.2623.87 m

    Here is the complete test case.
    Code:
        public Timeline getTimeline()
        {  
            final Timeline timeline = new Timeline();  
            timeline.setHeight100();
            timeline.setCanRemoveEvents(false);
            timeline.setCanEditLane(true);  
            timeline.setShowEventDescriptions(false);
            timeline.setEventSnapGap(1440); // 60 * 24
            timeline.setShowIndicators(true);
            timeline.setUseEventCanvasRolloverControls(false);
            timeline.setFirstDayOfWeek(0);
            timeline.setLaneEventPadding(2); // add a little space around events  
            timeline.setDisableWeekends(false);
            timeline.setShowWeekends(false);
            HeaderLevel[] headerLevels = new HeaderLevel[]{  
                new HeaderLevel(TimeUnit.WEEK),
                new HeaderLevel(TimeUnit.DAY)
            };  
            timeline.setHeaderLevels(headerLevels);  
            timeline.setLaneFields(new ListGridField[]{ new ListGridField("title", "Developer", 120)});  
            timeline.setLanes(TimelineLaneData.getRecords());  
            timeline.setData(TimelineData.getRecords());
            Date startDate = new Date(116, 2, 7);
            // if you don't call this, you'll get defaultTimelineColumnSpan columns (20)
            timeline.setStartDate(startDate);
            Date endDate = new Date(116, 3, 7);
            timeline.setEndDate(endDate);
            
            return timeline;
        }
        
        public static class TimelineData {  
              
            private static CalendarEvent[] records;  
            private static Date today = new Date(116, 2, 14);
            private static int year = today.getYear();  
            private static int month = today.getMonth();  
            private static int start = today.getDate();  
            
            public TimelineData() {  
            }  
            public static CalendarEvent[] getRecords() {  
                if (records == null) {  
                    records = getNewRecords();  
                }  
                return records;  
            }  
          
            public static CalendarEvent[] getNewRecords() {  
                
                return new CalendarEvent[]{  
                        new CalendarEvent(1, "Test 1", "", new Date(year, month, start - 1,0,0,0), new Date(year, month, start + 11,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(2, "Test 2", "", new Date(year, month, start,        0,0,0), new Date(year, month, start + 11,    0,0,0), "charlesMadigen"),
                        new CalendarEvent(3, "Test 3", "", new Date(year, month, start,        0,0,0), new Date(year, month, start + 17,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(4, "Test 4", "", new Date(year, month, start + 11,0,0,0), new Date(year, month, start + 15,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(5, "Test 5", "", new Date(year, month, start + 11,0,0,0), new Date(year, month, start + 16,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(6, "Test 6", "", new Date(year, month, start -  3,0,0,0), new Date(year, month, start + 17,    0,0,0), "charlesMadigen")
                };  
            }  
        }  
        
        public static class TimelineLaneData {  
              
            private static Lane[] records;  
          
            public static Lane[] getRecords() {  
                if (records == null) {  
                    records = getNewRecords();  
                }  
                return records;  
            }  
          
            public TimelineLaneData() {  
            }  
          
            public static Lane[] getNewRecords() {  
                Lane[] lanes = new Lane[]{  
                getLane("charlesMadigen", "Charles Madigen", "Managers"),  
                getLane("tamaraKane", "Tamara Kane", "Developers"),  
                getLane("darcyFeeney", "Darcy Feeney", "Managers"),  
                getLane("kaiKong", "Kai Kong", "Developers"),  
                getLane("shelleyFewel", "Shelley Fewel", "Managers"),  
                getLane("garretMonroe", "Garret Monroe", "Developers")  
                };  
                return lanes;  
            }  
          
            private static Lane getLane(String name, String title, String devGroup) {  
                Lane lane = new Lane(name, title);  
                lane.setAttribute("devGroup", devGroup);  
                return lane;  
            }  
        }
    Last edited by Niels_EMP; 12 Apr 2016, 03:51.

    Leave a comment:


  • andyx1975
    replied
    Hi,

    thanks for getting back. I am sitting behind linux mint and I am using firefox and chrome. I guess I used a build from 08.04. I will give it a try again... thanks. I will give you a feedback as soon as the build from 10.04. is out.

    Niels_EMP
    Maybe your timeshit issues are the same that I have here:
    http://forums.smartclient.com/forum/...mezones-issues

    Thanks and best regards
    Andy
    Last edited by andyx1975; 10 Apr 2016, 08:51.

    Leave a comment:


  • Niels_EMP
    replied
    I was using Chrome. Can't give the exact version before I'm back at the office Monday,

    Maybe it has something to do with showWeekends, I just notice that it is set to true in the original test case but it was set to false when I saw the new overlap issue.

    I will try again with the newest nightly Monday and upload a complete test case if I am still seeing it.

    Leave a comment:


  • Isomorphic
    replied
    andyx1975 - it looks like you saw your issue either in IE, or in an old version of some other browser, right? We fixed the RTE anyway, you can test out the fix in builds dated April 10 and later.

    Niels_EMP - can you confirm *your* browser(s)? It seems like you may be using MS Edge??

    With the latest framework code, we aren't seeing any overlap issues with the updated data-set you provided, or by dragging the events around in all manner of complex ways.

    Whichever browser it is, can you retest with a build dated April 10 or later before getting back to us? Please also let us know if you see any errors or warnings in the Developer Console.
    Last edited by Isomorphic; 9 Apr 2016, 06:45.

    Leave a comment:


  • Isomorphic
    replied
    Which browser(s) are you seeing this in?

    Leave a comment:


  • andyx1975
    replied
    I tried latest build from 09.04. und I receive the following error when I use the method "setEventSnapGap( 1440 );".

    Code:
    [ERROR] [com.uds.webadmin.GBookingAdmin] - 11:57:17.363:TMR0:WARN:TimelineView:isc_Timeline_0_timelineView:
    [ERROR] [com.uds.webadmin.GBookingAdmin] - 11:57:19.862:TMR8:WARN:Log:TypeError: _16[_25].snapGaps.fill is not a function
    Stack from error.stack:
        TimelineView.tagDataForOverlap() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Calendar.js?isc_version=.js:312
        CalendarView.refreshEvents() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Calendar.js?isc_version=.js:204
        Class.invokeSuper() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:273
        Class.Super() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:265
        TimelineView.refreshEvents() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Calendar.js?isc_version=.js:330
        Calendar.refreshSelectedView() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Calendar.js?isc_version=.js:431
        Calendar.dataChanged() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Calendar.js?isc_version=.js:431
        anonymous() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:59
        thunk() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:316
        observation() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:313
        ResultSet._doneChangingData() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1924
        ResultSet.handleUpdate() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1922
        ResultSet.dataSourceDataChanged() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1919
        anonymous() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:59
        thunk() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:316
        observation() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:313
        DataSource.updateCaches() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:497
        [c]DataSource.handleUpdate() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:279
        DataSource.fireResponseCallbacks() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:726
        DataSource._completeResponseProcessing() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:725
        DataSource._handleClientOnlyReply/_6() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:586
        DataSource._handleClientOnlyReply() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:587
        [c]Class.fireCallback() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:282
        [c]Class.fireCallback() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:350
        anonymous() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1674
        $wnd.isc.RPCManager.fireReplyCallback() @ :311
        [c]RPCManager.fireReplyCallbacks() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1679
        [c]RPCManager.performOperationReply() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1672
        RPCManager._performTransactionReply() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_DataBinding.js?isc_version=.js:1657
        [c]Class.fireCallback() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:282
        Timer._fireTimeout() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:1410
        Timer.setTimeout/_6<() @ com.uds.webadmin.GBookingAdmin/sc/modules/ISC_Core.js?isc_version=.js:1407
    Code:
    calendar = new Timeline();
            calendar.setShowEventDescriptions( true );
            calendar.setShowQuickEventDialog( false );
            calendar.setShowAddEventButton( false );
    
            calendar.setCanCreateEvents( true );
            calendar.setCanRemoveEvents( true );
            calendar.setCanResizeEvents( false );
    
            // Sets Hover
            calendar.setHoverWidth( 500 );
    
            // Activate weekends
            calendar.setDisableWeekends( false );
            calendar.setShowWeekends( true );
    
            // 60min x 24h (Ignore Time)
            calendar.setEventSnapGap( 1440 );
            calendar.setEventAutoArrange( true );
    
            // Can not move via drag & drop to another lane
            calendar.setCanEditLane( false );
            calendar.setCanReorderLanes( true );
            calendar.setLaneEventPadding( 2 );
    
            // Sets start and end date of calendar
    
            // Sets Calendar Start Date
            Date startDateCalendar = new Date();
            CalendarUtil.addDaysToDate( startDateCalendar, -1 );
            CalendarUtil.resetTime( startDateCalendar );
            calendar.setStartDate( startDateCalendar );
          
    
            // Sets Calendar End Date
            Date endDateCalendar = new Date();
            CalendarUtil.addDaysToDate( endDateCalendar, 30 );
            CalendarUtil.resetTime( endDateCalendar );
            calendar.setEndDate( endDateCalendar );
    
            // Sets lane field (first Columns)
            calendar.setLaneFields( new ListGridField[] { new ListGridField( "title", "Name", 350 ) } );
    
            // Init Lanes
            calendar.setLanes( getLanes() );
    
            // Sets the indicators
            calendar.setShowIndicators( false );
            calendar.setIndicators( getIndicators() );
    
            // Inits Calendar Header
            initHeaderLevels();
    
            // Sets the calendar dataSource
            CAssignedShowPlaner dsClass = new CAssignedShowPlaner();
            DataSource dataSource = dsClass.getDataSource( );
            calendar.setDataSource( dataSource );
            calendar.setAutoFetchData( true );
    
            calendar.draw();

    Leave a comment:


  • Niels_EMP
    replied
    SmartClient Version: v11.0p_2016-04-07/Pro Deployment (built 2016-04-07)

    Hi, I just upgraded to 6.0 and even though the overlap issue is fixed for the above test-case I was able to provoke some other overlap issue after pulling on some of the events in the timeline.
    Click image for larger version

Name:	TimelineOverlap2.png
Views:	283
Size:	14.2 KB
ID:	236679
    Here is some data that shows the overlap, just replace it with the data in the above test-case.
    Code:
                return new CalendarEvent[]{  
                        new CalendarEvent(1, "Test 1", "", new Date(year, month, start - 1,0,0,0), new Date(year, month, start + 11,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(2, "Test 2", "", new Date(year, month, start,        0,0,0), new Date(year, month, start + 11,    0,0,0), "charlesMadigen"),
                        new CalendarEvent(3, "Test 3", "", new Date(year, month, start,        0,0,0), new Date(year, month, start + 17,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(4, "Test 4", "", new Date(year, month, start + 11,0,0,0), new Date(year, month, start + 15,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(5, "Test 5", "", new Date(year, month, start + 11,0,0,0), new Date(year, month, start + 16,    0,0,0), "charlesMadigen"),  
                        new CalendarEvent(6, "Test 6", "", new Date(year, month, start -  3,0,0,0), new Date(year, month, start + 17,    0,0,0), "charlesMadigen")
                };

    Leave a comment:


  • andyx1975
    replied
    Awesome... this bug appears here to... it is related to "timeline.setEventSnapGap(1440); "... thanks for fixing

    Leave a comment:


  • Niels_EMP
    replied
    Awesome thanks, I will test it out together with 6.0

    Leave a comment:

Working...
X