Shift Management: Unexpected crash on IShifts.GetItem

Shift Management: Unexpected crash on IShifts.GetItem

Hi guys, I'm having big troubles with shift management. In my app I have these few lines that reads informations from the Calendar in order to keep track of "today" shifts.
_shiftsToday = shiftFilter.GetShifts();

if (_shiftsToday != null)
{
    IShift theShift;
    int howManyShifts = _shiftsToday.Count;

    SortedDictionary sortedShifts = new SortedDictionary();
    for (int y = 0; y < howManyShifts; y++)
    {                        

        try
        {
            // this line sometimes cause a CRASH
            theShift = _shiftsToday.GetItem(y);               


            if (theShift != null)
                sortedShifts.Add(theShift.StartTime, theShift);
        }
        catch (Exception e) // on Crash this execption is never catched, RT crashes immediatelly :-(
        {
            Logger.LogError(e, null);
        }
    }
}
Inside the screen, where is shown the calendar, I have a Save Button (only dev users can see it) which executes the code above. zenon runtime crashes on line : theShift = _shiftsToday.GetItem(y); without entering the catch clause. I did a test putting the execution of the same code on the end function of the screen. In this case it always work. So I think that is better to leave the screen before start using ShiftManagement APIs. What do you think? Is there a solution? PS: zenon 7.60 b46501 (32bit)

This is a migrated post! Originally posted on 06.08.2018 by user carlo.chiari. Please be aware that information can be outdated.