Announcement

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

    Calendar error when calling getVisibleStartDate in currentViewChanged

    SmartClient Version: v11.1p_2017-10-31/AllModules Development Only (built 2017-10-31)

    Chrome on OSX

    Hello, please try the #simpleCalendar sample modified like this:

    Code:
    isc.DataSource.create({
        ID: "eventDS",
        fields:[
            {name:"eventId", primaryKey: true, type: "sequence"},
            {name:"name"},
            {name:"description"},
            {name:"startDate", type: "datetime"},
            {name:"endDate", type: "datetime"}
        ],
        clientOnly: true,
        testData: eventData
    
    });     
    
    isc.Calendar.create({
        ID: "eventCalendar", 
        dataSource: eventDS, autoFetchData: true, 
        currentViewChanged: function(viewName){
            if(this.isDrawn()){
                isc.logEcho("startDate: " + this.getVisibleStartDate())
            }
        }
    });
    Then switch to 'month' view, you'll see this error in the developer console:
    Code:
    15:11:37.090:MUP6:WARN:Log:TypeError: Cannot read property 'fields' of null
    Stack from error.stack:
        MonthSchedule.getCellDate(<no args: exited>) on [MonthSchedule ID:eventCalendar_monthView] @ ISC_Calendar.js:292:44
        Calendar.getVisibleStartDate(<no args: exited>) on [Calendar ID:eventCalendar] @ ISC_Calendar.js:429:482
        _3.currentViewChanged(<no args: exited>) on [Calendar ID:eventCalendar] @ [no file]:107:46
        _3.$8c(<no args: exited>) on [TabSet ID:eventCalendar_mainView] @ ISC_Calendar.js:556:14
        _3.buttonSelected(<no args: exited>) on [TabBar ID:eventCalendar_mainView_tabBar] @ ISC_Containers.js:298:596
        _3.setSelected(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Foundation.js:609:42
        StatefulCanvas.select(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Foundation.js:183:150
        StatefulCanvas.handleActivate(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Foundation.js:234:149
        StatefulCanvas.handleClick(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Foundation.js:236:13
        [c]Class.invokeSuper(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Core.js:298:93
        [c]Class.Super(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Core.js:290:170
        _3.handleClick(<no args: exited>) on [SimpleTabButton ID:isc_SimpleTabButton_4] @ ISC_Containers.js:48:135
        [c]EventHandler.bubbleEvent(<no args: exited>) on [Class EventHandler] @ ISC_Core.js:2044:89
        [c]EventHandler.handleClick(<no args: exited>) on [Class EventHandler] @ ISC_Core.js:1900:50
        EventHandler._handleMouseUp(<no args: exited>) on [Class EventHandler] @ ISC_Core.js:1885:11
        [c]EventHandler.handleMouseUp(<no args: exited>) on [Class EventHandler] @ ISC_Core.js:1876:57
        [c]EventHandler.dispatch(_1=>[c]EventHandler.handleMouseUp(), _2=>[object MouseEvent]) on [Class EventHandler] @ ISC_Core.js:2130:108
        HTMLDocument.eval(event=>[object MouseEvent]) @ [no file]:3:123
    This appears only the first time you switch to the month view.

    #2
    This one's been fixed for builds dated November 1 and later - the notification was firing before the view was drawn.

    Comment


      #3
      I can confirm it's fixed, thank you very much.

      Comment

      Working...
      X