/// <summary> /// Attempts to get time zone from calendar of service of sourcing case entity. /// </summary> /// <returns>Time zone.</returns> protected TimeZoneInfo GetFromServiceCalendar() { var calendarId = TimeZoneSource.GetTypedColumnValue <Guid>(ServiceItemCalendarColumnName); var esq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "Calendar"); var timeZoneCodeColumnName = esq.AddColumn("TimeZone.Code").Name; Entity calendar = esq.GetEntity(UserConnection, calendarId); var timeZoneCode = calendar.GetTypedColumnValue <string>(timeZoneCodeColumnName); return(FindByCode(timeZoneCode)); }
/// <summary> /// Attempts to get time zone from service in service pact of sourcing case entity. /// </summary> /// <returns>Time zone.</returns> private TimeZoneInfo GetFromServiceInServicePact() { var esq = new EntitySchemaQuery(UserConnection.EntitySchemaManager, "ServiceInServicePact"); EntitySchemaQueryColumn timeZoneCodeColumn = esq.AddColumn("Calendar.TimeZone.Code"); esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, "ServiceItem", TimeZoneSource.GetTypedColumnValue <Guid>(ServiceItemIdColumnName))); esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, "ServicePact", TimeZoneSource.GetTypedColumnValue <Guid>(ServicePactIdColumnName))); Entity serviceInServicePact = esq.GetEntityCollection(UserConnection).First.Value; string code = serviceInServicePact.GetTypedColumnValue <string>(timeZoneCodeColumn.Name); return(FindByCode(code)); }