protected override bool Execute(CodeActivityContext context) { if (string.IsNullOrEmpty(ObjectIds)) { Errors.Set(context, "Не определены объекты для которых будет сформирован баланс"); return(false); } MultiPsSelectedArgs args; try { args = ObjectIds.DeserializeFromString <MultiPsSelectedArgs>(); } catch (Exception ex) { Errors.Set(context, "Ошибка преобразования параметров " + ex.Message); return(false); } try { var res = ARM_Service.BL_GetFreeHierarchyBalanceByObjects(args.PSList, StartDateTime.Get(context), EndDateTime.Get(context), TimeZoneId, DiscreteType, UnitDigit); if (res != null && res.CalculatedValues != null) { Balances.Set(context, res.CalculatedValues.Values.ToList()); if (res.Errors != null && res.Errors.Length > 0) { Errors.Set(context, res.Errors.ToString()); } } } catch (Exception ex) { Errors.Set(context, ex.Message); if (!HideException.Get(context)) { throw ex; } } return(string.IsNullOrEmpty(Errors.Get(context))); }