Пример #1
0
        private void PutReportToFtp(CodeActivityContext context, int?psId)
        {
            try
            {
                var repF = ARM_Service.REP_Export_ReportObjectClass(User_ID, ReportFormat, Report_id.Get(context), null,
                                                                    HierLev1_ID.Get(context),
                                                                    HierLev2_ID.Get(context),
                                                                    HierLev3_ID.Get(context),
                                                                    psId, JuridicalPerson_ID.Get(context),
                                                                    StartDateTime.Get(context), EndDateTime.Get(context), null, WcfTimeOut.Get(context));

                var doc = LargeData.DownloadData(repF.Key);


                if (!string.IsNullOrEmpty(repF.Value.Error))
                {
                    Error.Set(context, repF.Value.Error);
                }
                else
                {
                    //var fs = new FileStream("C:\\777\\1\\rep_"+p.PS_ID.ToString()+".xls", FileMode.Create, FileAccess.Write);
                    //DataReport.Document.CopyTo(fs);
                    //fs.Close();
                    PutReportToFtp(context, doc);
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
        }
Пример #2
0
        public void RefreshTree()
        {
            TypesSource.Clear();
            InstancesSource.Clear();

            List <Workflow_Activity_Instance> instances = null;

            Manager.UI.RunAsync(delegate()
            {
                try
                {
                    var processes = ARM_Service.WWF_Get_Processes(isAlarms);
                    types         = processes.Key;
                    instances     = processes.Value;
                }
                catch (Exception)
                {
                    Manager.UI.ShowMessage("Не удалось получить список процессов!");
                }
            }, delegate()
            {
                if (types != null)
                {
                    TypesSource.AddRange(types);
                }

                if (instances != null)
                {
                    InstancesSource.AddRange(instances);
                }
            });
        }
Пример #3
0
        protected override bool Execute(CodeActivityContext context)
        {
            string FormulaUN = Formula_UN.Get(context);

            if (string.IsNullOrEmpty(FormulaUN))
            {
                Error.Set(context, "Не определен Идентификатор формулы");
                return(false);
            }

            try
            {
                Formula_Description Res = ARM_Service.FE_Get_FormulaDescription(FormulaUN);

                if (Res != null)
                {
                    FormulaDesc.Set(context, Res);
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #4
0
        protected override bool Execute(CodeActivityContext context)
        {
            DateTime dt = new DateTime(Year.Get(context), Month.Get(context), 1);

            try
            {
                TI_ChanelType ti = new TI_ChanelType
                {
                    ChannelType    = ChannelType.Get(context),
                    TI_ID          = TiId.Get(context),
                    DataSourceType = null
                };

                SectionIntegralComplexResults result =
                    ARM_Service.GroupTP_GetActConsumptionPowerTi(ti, ExcelAdapterType, dt, 2, ".", IsReadCalculatedValues.Get(context), isExportAllIncludetTi.Get(context), false, null, WcfTimeOut.Get(context));
                if (!string.IsNullOrEmpty(result.Errors.ToString()))
                {
                    Error.Set(context, result.Errors.ToString());
                }
                else
                {
                    SendEmail(context, CompressUtility.DecompressGZip(result.Document));
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #5
0
        protected override bool Execute(CodeActivityContext context)
        {
            List <int> ps_id_List = ListPsId.Get(context);
            DateTime   _EventDate = EventDate.Get(context);
            bool       roundData  = RoundData.Get(context);

            if (ps_id_List == null || ps_id_List.Count == 0)
            {
                Error.Set(context, "Список ПС не может быть пустым");
                return(false);
            }

            try
            {
                Stream Res = ARM_Service.XMLExportGetPS80020ForPSArray(_EventDate, ps_id_List, DataSourceType, requiredATSCode, isReadCalculatedValues, roundData, false, UTCTimeShiftFromMoscow, false, false, 1, true).XMLStream;

                MemoryStream ms = new MemoryStream();
                Res.CopyTo(ms);
                ms.Position = 0;

                Document.Set(context, ms);
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
        protected override bool Execute(CodeActivityContext context)
        {
            List <int>     id_List    = ListSectionID.Get(context);
            DateTimeOffset _EventDate = EventDate.Get(context);
            bool           roundData  = RoundData.Get(context);

            if (id_List == null || id_List.Count == 0)
            {
                Error.Set(context, "Список секций не может быть пустым");
                return(false);
            }

            try
            {
                Stream       Res = ARM_Service.XMLExportGetSection80020ForSectionArray(_EventDate, id_List, DataSourceType, BusRelation, roundData, false, TimeZoneId, true, false, false, 1, true).XMLStream;
                MemoryStream ms  = new MemoryStream();
                Res.CopyTo(ms);
                ms.Position = 0;

                Document.Set(context, ms);
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #7
0
        protected override bool Execute(CodeActivityContext context)
        {
            List <string> _ListAisId = ListAisId.Get(context);
            bool          roundData  = RoundData.Get(context);

            if (_ListAisId == null || _ListAisId.Count == 0)
            {
                Error.Set(context, "Список идентификаторов АИС не может быть пустым");
                return(false);
            }

            try
            {
                XMLATSExportSingleObjectResultCompressed Res = ARM_Service.XMLExportGetAIS80020Ext(StartDateTime.Get(context), EndDateTime.Get(context), _ListAisId, DataSourceType, isReadCalculatedValues, roundData, false, false, false, 1, true);
                if (!string.IsNullOrEmpty(Res.Errors))
                {
                    Error.Set(context, Res.Errors);
                }

                Document.Set(context, Res.XMLStreamCompressed);
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #8
0
        protected override bool Execute(CodeActivityContext context)
        {
            string         _AisId     = AisId.Get(context);
            DateTimeOffset _EventDate = EventDate.Get(context);
            bool           roundData  = RoundData.Get(context);

            if (string.IsNullOrEmpty(_AisId))
            {
                Error.Set(context, "Идентификатор АИС не может быть пустым");
                return(false);
            }

            try
            {
                XMLATSExportSingleObjectResultCompressed Res = ARM_Service.XMLExportGetAIS80020(_EventDate, _AisId, DataSourceType, isReadCalculatedValues, roundData, false, false, false, false, 1, true);
                if (!string.IsNullOrEmpty(Res.Errors))
                {
                    Error.Set(context, Res.Errors);
                }

                Document.Set(context, Res.XMLStreamCompressed);
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #9
0
        protected override bool Execute(CodeActivityContext context)
        {
            int pId = PsId.Get(context);

            try
            {
                //TODO часовой пояс
                var res = ARM_Service.Monit_GetStatisticInformationByPs(pId,
                                                                        StartDateTime.Get(context),
                                                                        EndDateTime.Get(context),
                                                                        null, TIType.Get(context));

                StatisticInfo.Set(context, res);
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #10
0
        protected override bool Execute(CodeActivityContext context)
        {
            try
            {
                var res = ARM_Service.BPS_GetPSBalanceExcelDocument2(BalanceId.Get(context),
                                                                     StartDateTime.Get(context),
                                                                     EndDateTime.Get(context),
                                                                     DiscreteType,
                                                                     DataSourceType,
                                                                     isPower,
                                                                     isOffsetFromMoscowEnbledForDrums,
                                                                     IsPowerEquipmentEnabled, 7, null, false);
                if (res != null)
                {
                    var ms = new MemoryStream();
                    res.CopyTo(ms);
                    ms.Position = 0;
                    Document.Set(context, ms);
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
        protected override bool Execute(CodeActivityContext context)
        {
            try
            {
                var res = ARM_Service.BL_GetFreeHierarchyBalanceResult(BalanceFreeHierarchyUNs.Get(context),
                                                                       StartDateTime.Get(context),
                                                                       EndDateTime.Get(context),
                                                                       TimeZoneId, TExportExcelAdapterType.toXLSx, false,
                                                                       DiscreteType, UnitDigit, false, UnitDigit, false, false, 0, 0, false, false, false);

                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)));
        }
Пример #12
0
        protected override bool Execute(CodeActivityContext context)
        {
            DateTime dt = new DateTime(Year.Get(context), Month.Get(context), 1);

            try
            {
                ID_TypeHierarchy idHierarchy = new ID_TypeHierarchy();
                idHierarchy.ID            = ID.Get(context);
                idHierarchy.TypeHierarchy = HierarchyType;

                SectionIntegralComplexResults result =
                    ARM_Service.GroupTP_GetActConsumptionPower(idHierarchy, GroupTPPowerReportMode, null,
                                                               TypeOfMeasuring, ExcelAdapterType, dt,
                                                               2, ".", IsReadCalculatedValues.Get(context), IncludeAllTI.Get(context), false, null, null, WcfTimeOut.Get(context));
                if (!string.IsNullOrEmpty(result.Errors.ToString()) && (result.Document == null || result.Document.Length == 0))
                {
                    Error.Set(context, result.Errors.ToString());
                }
                else
                {
                    SendEmail(context, CompressUtility.DecompressGZip(result.Document));
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #13
0
        private void UserControl_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
        {
            inst = DataContext as Workflow_Activity_Instance;
            activityType.ItemsSource = frame.types;
            var shed = ARM_Service.SCHED_Get_Scheduler();

            if (shed != null)
            {
                var trigs = shed.Triggers;
                if (trigs != null)
                {
                    foreach (var trig in trigs)
                    {
                        trig.StartDateTime = trig.StartDateTime.ServerToClient();
                        if (trig.FinishDateTime != null)
                        {
                            trig.FinishDateTime = trig.FinishDateTime.Value.ServerToClient();
                        }
                    }
                }
                triggerForm.Set(trigs, inst.ScheduleTimeTrigger_ID);
                Dispatcher.BeginInvoke(DispatcherPriority.ApplicationIdle, new Action(delegate()
                {
                    userChange = true;
                }));
            }
            else
            {
                frame = null;
                Manager.UI.ShowMessage("Не удалось открыть планировщик процесса!");
            }
        }
Пример #14
0
        protected override bool Execute(CodeActivityContext context)
        {
            bool   res          = false;
            string Message      = CheckStr(AlarmMessage.Get(context), 1024);
            string ShortMessage = CheckStr(ShortAlarmMessage.Get(context), 128);
            string Description  = CheckStr(AlarmDescription.Get(context), 1024);
            string UniqueKey    = CheckStr(AlarmUniqueKey.Get(context), 1024);

            try
            {
                if (MonitoringChangesAlarm.isChangesAlarm_61968Systems(Slave61968System_ID.Get(context), WorkflowActivity_ID.Get(context), UserID.Get(context),
                                                                       AlarmSeverity.Get(context), UniqueKey))
                {
                    res = ARM_Service.ALARM_WriteAlarm_Master61968SlaveSystems(Slave61968System_ID.Get(context), WorkflowActivity_ID.Get(context), UserID.Get(context),
                                                                               AlarmSettingID.Get(context), AlarmSeverity.Get(context),
                                                                               Message,
                                                                               ShortMessage,
                                                                               Description,
                                                                               UniqueKey, AlarmDateTime.Get(context));
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
            return(string.IsNullOrEmpty(Error.Get(context)) && res);
        }
Пример #15
0
        protected override bool Execute(CodeActivityContext context)
        {
            var res          = false;
            var message      = CheckStr(AlarmMessage.Get(context), 1024);
            var shortMessage = CheckStr(ShortAlarmMessage.Get(context), 128);
            var description  = CheckStr(AlarmDescription.Get(context), 1024);
            var uniqueKey    = CheckStr(AlarmUniqueKey.Get(context), 1024);

            try
            {
                if (MonitoringChangesAlarm.isChangesAlarm_BalanceFreeHierarchy(BalanceFreeHierarchy_UN.Get(context), WorkflowActivity_ID.Get(context), UserID.Get(context),
                                                                               AlarmSeverity.Get(context), uniqueKey))
                {
                    res = ARM_Service.ALARM_WriteAlarm_BalanceFreeHierarchy(BalanceFreeHierarchy_UN.Get(context), WorkflowActivity_ID.Get(context), UserID.Get(context),
                                                                            AlarmSettingID.Get(context), AlarmSeverity.Get(context),
                                                                            message,
                                                                            shortMessage,
                                                                            description,
                                                                            uniqueKey, AlarmDateTime.Get(context));
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
            return(string.IsNullOrEmpty(Error.Get(context)) && res);
        }
Пример #16
0
        protected override bool Execute(CodeActivityContext context)
        {
            int obj_id = ObjectID.Get(context);


            List <usp2_Info_GetFormulaHierarchy_ListResult> vallist = null;

            try
            {
                var res = ARM_Service.FL_GetFormulaHierarchy_List(obj_id, (enumTypeHierarchy)ObjectType);
                if (res != null)
                {
                    vallist = res.FormulaHierarchy;
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            if (vallist == null)
            {
                vallist = new List <usp2_Info_GetFormulaHierarchy_ListResult>();
            }
            FormulsList.Set(context, vallist);

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #17
0
        protected override bool Execute(CodeActivityContext context)
        {
            Error.Set(context, null);
            var result = new List <int>();

            try
            {
                var hiers     = new List <List <int> >();
                var hiers1Str = new[] { (HierLev1_ID.Get(context) ?? "").ToString(), (HierLev2_ID.Get(context) ?? "").ToString(), (HierLev3_ID.Get(context) ?? "").ToString() };

                for (var level = 0; level < 3; level++)
                {
                    var h   = new List <int>();
                    var str = hiers1Str[level];
                    if (!string.IsNullOrEmpty(str))
                    {
                        str = hiers1Str[level].Replace(",", ";");
                        foreach (var s in str.Split(';'))
                        {
                            int id;
                            if (int.TryParse(s, out id))
                            {
                                h.Add(id);
                            }
                        }
                    }

                    hiers.Add(h);
                }

                var psList = ARM_Service.Tree_GetListPSForHierLevels(hiers[0], hiers[1], hiers[2]);
                if (psList == null || psList.Count == 0)
                {
                    var err = "Не найдено ни одной ПС";
                    Error.Set(context, err);
                    if (!HideException.Get(context))
                    {
                        throw new Exception(err);
                    }
                }

                foreach (var p in psList)
                {
                    result.Add(p.PS_ID);
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            PS_List.Set(context, result);
            return(string.IsNullOrEmpty(Error.Get(context)));
        }
        protected override bool Execute(CodeActivityContext context)
        {
            if (TIList.Get(context) == null)
            {
                Error.Set(context, "Не определен список идентификаторов ТИ");
                return(false);
            }

            List <int> InList = TIList.Get(context);

            if (InList.Count == 0)
            {
                Error.Set(context, "Список идентификаторов ТИ не должен быть пустым");
                return(false);
            }

            if (TechParamTypes == null || TechParamTypes.Count == 0)
            {
                Error.Set(context, "Список параметров мгновенных значений не должен быть пустым");
                return(false);
            }

            if (RequestType == enumEnrgyQualityRequestType.Archive)
            {
                if (ServerFromLook.Get(context) == null || ServerToLook.Get(context) == null)
                {
                    Error.Set(context, "Для архивных значений начальная и конечная дата должна быть определена");
                    return(false);
                }
            }

            try
            {
                var dt  = ServerFromLook.Get(context);
                var tis = InList.ToDictionary(k => k, v => dt);

                var res = ARM_Service.DS_GetArchTech_Quality_LastValues(tis, ServerToLook.Get(context), TechParamTypes, false);
                if (res != null)
                {
                    if (res.Errors != null)
                    {
                        Error.Set(context, res.Errors);
                    }

                    Values.Set(context, res.LastValues);
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #19
0
        protected override bool Execute(CodeActivityContext context)
        {
            object obj    = ID.Get(context);
            int?   IntId  = null;
            string StrId  = null;
            Guid?  GuidId = null;

            if (obj == null)
            {
                Error.Set(context, "Не определен Идентификатор объекта");
                return(false);
            }
            try
            {
                if (ObjectType == enumObjectTypeForName.HierLev1 ||
                    ObjectType == enumObjectTypeForName.HierLev2 ||
                    ObjectType == enumObjectTypeForName.HierLev3 ||
                    ObjectType == enumObjectTypeForName.PS ||
                    ObjectType == enumObjectTypeForName.Section ||
                    ObjectType == enumObjectTypeForName.TI)
                {
                    IntId = Convert.ToInt32(obj);
                }
                if (ObjectType == enumObjectTypeForName.Balance_PS ||
                    ObjectType == enumObjectTypeForName.Balance_HierLev0 ||
                    ObjectType == enumObjectTypeForName.Balance_HierLev3 ||
                    ObjectType == enumObjectTypeForName.User ||
                    ObjectType == enumObjectTypeForName.Formula)
                {
                    StrId = Convert.ToString(obj);
                }
            }
            catch
            {
                Error.Set(context, "Ошибка преобразования идентификатора объекта");
                return(false);
            }

            TObjectName res = null;

            try
            {
                res = ARM_Service.ALARM_GetObjectName(ObjectType, IntId, StrId, GuidId, PathDelim);
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
            }

            if (res != null)
            {
                ObjName.Set(context, res.Name);
                ObjPath.Set(context, res.Path);
                Error.Set(context, res.Error);
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #20
0
        protected override bool Execute(CodeActivityContext context)
        {
            Error.Set(context, null);

            if (Parameters == null)
            {
                Error.Set(context, "Не определены параметры управления");
                return(false);
            }

            if (string.IsNullOrEmpty(LoginInfo.UserName) || string.IsNullOrEmpty(LoginInfo.Password))
            {
                Error.Set(context, "Не определены параметры авторизации");
                return(false);
            }

            int         tiId = UspdId.Get(context);
            CommandInfo paramscommand;

            try
            {
                try
                {
                    paramscommand = Parameters.DeserializeFromString <CommandInfo>();
                }
                catch (Exception ex)
                {
                    Error.Set(context, "Ошибка преобразования параметров команды" + ex.Message);
                    return(false);
                }

                //command.SerializeToString<CommandInfo>()   - в строку
                //command.DeserializeFromString<CommandInfo>()   - из строки

                List <KeyValuePair <int, FailReason> > res = ARM_Service.DM_Set_USPD_Methods(LoginInfo.UserName, LoginInfo.Password, paramscommand.Request,
                                                                                             new List <Tuple <int, List <KeyValuePair <long, DeviceMethodDescription> > > >()
                {
                    new Tuple <int, List <KeyValuePair <long, DeviceMethodDescription> > >(paramscommand.DeviceToClass_ID, paramscommand.Methods)
                }, new List <int>()
                {
                    tiId
                });
                if (res.Count == 1)
                {
                    Error.Set(context, GlobalEnumsDictionary.ConvertFailReasonToString(res[0].Value));
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #21
0
        /*
         * [Description("Строка ошибки")]
         * [DisplayName("Ошибка")]
         * public OutArgument<string> Error { get; set; }
         *
         * [RequiredArgument]
         * [Description("Уникальный номер отчета")]
         * [DisplayName("Идентификатор отчета")]
         * [Category("Отчет")]
         * public InArgument<string> Report_id { get; set; }
         *
         * [RequiredArgument]
         * [Description("Начальная дата отчета")]
         * [DisplayName("Начальная дата")]
         * [Category("Отчет")]
         * public InArgument<DateTime> StartDateTime { get; set; }
         *
         * [RequiredArgument]
         * [Description("Конечная дата отчета")]
         * [DisplayName("Конечная дата")]
         * [Category("Отчет")]
         * public InArgument<DateTime> EndDateTime { get; set; }
         *
         * [Description("Формат отчета")]
         * [DisplayName("Формат")]
         * [Category("Отчет")]
         * public ReportExportFormat ReportFormat { get; set; }
         *
         * //--------------------------------------------------------------
         * [RequiredArgument]
         * [Description("Адрес получателя")]
         * [DisplayName("Адресат")]
         * [Category("Электронная почта")]
         * public InArgument<string> To { get; set; }
         *
         * [RequiredArgument]
         * [Description("Адрес отправителя")]
         * [DisplayName("Отправитель")]
         * [Category("Электронная почта")]
         * public InArgument<string> From { get; set; }
         *
         * [RequiredArgument]
         * [Description("Тема письма")]
         * [DisplayName("Тема")]
         * [Category("Электронная почта")]
         * public InArgument<string> Subject { get; set; }
         *
         * [DisplayName("Тело письма")]
         * [Category("Электронная почта")]
         * public InArgument<string> Body { get; set; }
         *
         * [RequiredArgument]
         * [DefaultValue(25)]
         * [DisplayName("Порт")]
         * [Category("Электронная почта")]
         * public int Port { get; set; }
         *
         * [RequiredArgument]
         * [DisplayName("Имя пользователя")]
         * [Category("Электронная почта")]
         * public InArgument<string> UserName { get; set; }
         *
         * [RequiredArgument]
         * [DisplayName("Пароль")]
         * [Category("Электронная почта")]
         * public InArgument<string> Password { get; set; }
         *
         * [RequiredArgument]
         * [DisplayName("Почтовый сервер")]
         * [Category("Электронная почта")]
         * public InArgument<string> Host { get; set; }
         *
         * protected override void CacheMetadata(CodeActivityMetadata metadata)
         * {
         *  if (Port <= 0)
         *      metadata.AddValidationError("Значение свойства 'Порт' должно быть больше 0");
         *  base.CacheMetadata(metadata);
         * }
         *
         *
         * protected string GetFileExtByReportFormat()
         * {
         *  string Ext = "";
         *  if (ReportFormat == ReportExportFormat.Csv) Ext = "csv";
         *  if (ReportFormat == ReportExportFormat.Excel) Ext = "xls";
         *  if (ReportFormat == ReportExportFormat.Excel2007) Ext = "xlsx";
         *  if (ReportFormat == ReportExportFormat.ImageBmp) Ext = "bmp";
         *  if (ReportFormat == ReportExportFormat.ImageEmf) Ext = "emf";
         *  if (ReportFormat == ReportExportFormat.ImageGif) Ext = "gif";
         *  if (ReportFormat == ReportExportFormat.ImageJpeg) Ext = "jpg";
         *  if (ReportFormat == ReportExportFormat.ImagePcx) Ext = "pcx";
         *  if (ReportFormat == ReportExportFormat.ImagePng) Ext = "png";
         *  if (ReportFormat == ReportExportFormat.ImageTiff) Ext = "Tiff";
         *  if (ReportFormat == ReportExportFormat.Mht) Ext = "mht";
         *  if (ReportFormat == ReportExportFormat.Ods) Ext = "ods";
         *  if (ReportFormat == ReportExportFormat.Odt) Ext = "odt";
         *  if (ReportFormat == ReportExportFormat.Pdf) Ext = "pdf";
         *  if (ReportFormat == ReportExportFormat.Ppt2007) Ext = "ppt";
         *  if (ReportFormat == ReportExportFormat.Rtf) Ext = "rtf";
         *  if (ReportFormat == ReportExportFormat.Text) Ext = "txt";
         *  if (ReportFormat == ReportExportFormat.Word2007) Ext = "docx";
         *  if (ReportFormat == ReportExportFormat.Xps) Ext = "xps";
         *  if (Ext != "")
         *      Ext = "." + Ext;
         *  return Ext;
         * }
         *
         * protected void SendEmail(CodeActivityContext context,MemoryStream AttachContent)
         * {
         *
         *  MailMessage mailMessage = new MailMessage();
         *
         *  mailMessage.From = new MailAddress(From.Get(context));
         *  string STo = To.Get(context);
         *
         *  STo.Split(new Char[] { ';' }, StringSplitOptions.RemoveEmptyEntries).ToList()
         *      .ForEach(item => mailMessage.To.Add(item.Trim()));
         *
         *  mailMessage.Subject = Subject.Get(context);
         *  mailMessage.Body = Body.Get(context);
         *
         *  SmtpClient smtpClient = new SmtpClient();
         *  smtpClient.Host = Host.Get(context);
         *  smtpClient.Port = Port;
         *  smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
         *  if (!String.IsNullOrEmpty(UserName.Get(context)) && !String.IsNullOrEmpty(Password.Get(context)))
         *      smtpClient.Credentials = new System.Net.NetworkCredential(UserName.Get(context), Password.Get(context));
         *
         *  if (AttachContent != null)
         *  {
         *      Attachment Attach = new Attachment(AttachContent, "Отчет"+GetFileExtByReportFormat());
         *      mailMessage.Attachments.Add(Attach);
         *  }
         *  //throw new Exception("Error sending email"); // test exception
         *  smtpClient.Send(mailMessage);
         * }
         */

        protected override bool Execute(CodeActivityContext context)
        {
            Error.Set(context, null);
            //SectionIntegralComplexResults DataReport;
            KeyValuePair <Guid, TReportResult> RepF = new KeyValuePair <Guid, TReportResult>();
            MemoryStream doc = null;

            try
            {
                string userId = null;
                if (!string.IsNullOrEmpty(User_ID))
                {
                    try
                    {
                        userId = UserHelper.GetIdByUserName(User_ID);
                        if (string.IsNullOrEmpty(userId)) // похоже тут не имя а UserID
                        {
                            userId = User_ID;
                        }
                    }
                    catch (Exception ex)
                    {
                        Error.Set(context, ex.Message);
                        if (!HideException.Get(context))
                        {
                            throw ex;
                        }
                    }
                }

                RepF = ARM_Service.REP_Export_Report(userId, ReportFormat, Report_id.Get(context),
                                                     StartDateTime.Get(context), EndDateTime.Get(context), null, WcfTimeOut.Get(context));
                doc = LargeData.DownloadData(RepF.Key);


                if (!string.IsNullOrEmpty(RepF.Value.Error))
                {
                    Error.Set(context, RepF.Value.Error);
                }
                else
                {
                    SendEmail(context, doc);
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #22
0
        protected override bool Execute(CodeActivityContext context)
        {
            Error.Set(context, null);
            //SectionIntegralComplexResults DataReport;

            if (JuridicalPerson_ID.Get(context) != null)
            {
                PutReportToFtp(context, null);
            }
            else
            {
                List <Dict_P> psList;
                if (PS_ID.Get(context) == null)
                {
                    var hier1 = HierLev1_ID.Get(context);
                    var hier2 = HierLev2_ID.Get(context);
                    var hier3 = HierLev3_ID.Get(context);

                    psList = ARM_Service.Tree_GetListPSForHierLevels(hier1.HasValue ? new List <int> {
                        hier1.Value
                    } : null,
                                                                     hier2.HasValue ? new List <int> {
                        hier2.Value
                    } : null, hier3.HasValue ? new List <int> {
                        hier3.Value
                    } : null);
                }
                else
                {
                    psList = new List <Dict_P> {
                        new Dict_P {
                            PS_ID = (int)PS_ID.Get(context)
                        }
                    };
                }

                if (psList == null || psList.Count == 0)
                {
                    var err = "Не найдено ни одной ПС";
                    Error.Set(context, err);
                    if (!HideException.Get(context))
                    {
                        throw new Exception(err);
                    }
                }


                foreach (var p in psList)
                {
                    PutReportToFtp(context, p.PS_ID);
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #23
0
        private void save_Click(object sender, RoutedEventArgs e)
        {
            if (string.IsNullOrEmpty(inst.StringName))
            {
                Manager.UI.ShowMessage("Введите имя экземпляра!");
                return;
            }
            if (inst.WorkflowActivity_ID == 0)
            {
                Manager.UI.ShowMessage("Укажите тип процесса!");
                return;
            }
            Report_Scheduler_Time_Triggers_List trig = triggerForm.trig;

            if (inst.InstanceExecuteType == 3)
            {
                if (!triggerForm.Save())
                {
                    return;
                }
                inst.ScheduleTimeTrigger_ID = trig.ScheduleTimeTrigger_ID;
            }
            else
            {
                trig = null;
                inst.ScheduleTimeTrigger_ID = null;
            }
            if (inst.WorkflowInstance_ID == Guid.Empty)
            {
                inst.WorkflowInstance_ID = Guid.NewGuid();
            }
            inst.User_ID = Manager.User.User_ID;
            inst.CUS_ID  = Manager.CUS_ID;
            string result = "";

            Manager.UI.RunAsync(delegate()
            {
                result = ARM_Service.WWF_Save_Instance(Manager.UserName, Manager.Password, inst, trig);
            }, delegate()
            {
                if (result == "")
                {
                    Manager.UI.ShowMessage("Экземпляр процесса успешно сохранен!");
                    Manager.UI.CloseGlobalModal(delegate()
                    {
                        frame.RefreshTree();
                    });
                }
                else
                {
                    Manager.UI.ShowMessage(result);
                }
            });
        }
Пример #24
0
        protected override bool Execute(CodeActivityContext context)
        {
            if (TIList.Get(context) == null)
            {
                Error.Set(context, "Не определен список идентификаторов ТИ");
                return(false);
            }

            var inList = TIList.Get(context);

            if (inList.Count == 0)
            {
                Error.Set(context, "Список идентификаторов ТИ не должен быть пустым");
                return(false);
            }

            var result = new List <EventsJournalTI>();

            try
            {
                var res = ARM_Service.JTI_GetAllTIJournals(inList, StartDateTime.Get(context), EndDateTime.Get(context));
                if (res != null)
                {
                    foreach (var jti in res)
                    {
                        result.Add(new EventsJournalTI
                        {
                            TI_ID                   = jti.TI_ID,
                            EventDateTime           = jti.EventDateTime,
                            EventCode               = jti.EventCode,
                            DispatchDateTime        = jti.DispatchDateTime,
                            ExtendedEventCode       = jti.ExtendedEventCode,
                            Event61968Domain_ID     = jti.Event61968Domain_ID,
                            Event61968DomainPart_ID = jti.Event61968DomainPart_ID,
                            Event61968Type_ID       = jti.Event61968Type_ID,
                            Event61968Index_ID      = jti.Event61968Index_ID,
                            Event61968Param         = jti.Event61968Param
                        });
                    }
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            EventsJournal.Set(context, result);
            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #25
0
        private void butDel_Click(object sender, RoutedEventArgs e)
        {
            var obj      = (sender as Button).FindParent <DataCell>().DataContext;
            var activity = obj as Workflow_Activity_List;

            if (activity != null)
            {
                Manager.UI.ShowYesNoDialog("Удалить тип процесса и его экземпляры?", () =>
                {
                    string res = ARM_Service.WWF_Delete_Process(Manager.UserName, Manager.Password, activity.WorkflowActivity_ID);
                    if (res == "")
                    {
                        RefreshTree();
                    }
                    else
                    {
                        if (res != null)
                        {
                            Manager.UI.ShowMessage(res);
                        }
                        else
                        {
                            Manager.UI.ShowMessage("Не удалось удалить процесс!");
                        }
                    }
                });
            }
            var instance = obj as Workflow_Activity_Instance;

            if (instance != null)
            {
                Manager.UI.ShowYesNoDialog("Удалить экземпляр процесса?", () =>
                {
                    string res = ARM_Service.WWF_Delete_Instance(Manager.UserName, Manager.Password, instance.WorkflowInstance_ID);
                    if (res == "")
                    {
                        RefreshTree();
                    }
                    else
                    {
                        if (res != null)
                        {
                            Manager.UI.ShowMessage(res);
                        }
                        else
                        {
                            Manager.UI.ShowMessage("Не удалось удалить экземпляр процесса!");
                        }
                    }
                });
            }
        }
Пример #26
0
        private static UserInfo GetUserInfoByUserName(string userName)
        {
            List <UserInfo> uList = ARM_Service.EXPL_Get_All_Users();

            foreach (UserInfo u in uList)
            {
                if (u.UserName.ToLower(CultureInfo.InvariantCulture) == userName.ToLower(CultureInfo.InvariantCulture))
                {
                    return(u);
                }
            }
            return(null);
        }
Пример #27
0
        protected override bool Execute(CodeActivityContext context)
        {
            int ti_id = TiId.Get(context);
            Dictionary <int, DateTime?> List_ti_id = new Dictionary <int, DateTime?>();

            List_ti_id[ti_id] = ServerFromLook.Get(context);

            if (TechParamTypes == null || TechParamTypes.Count == 0)
            {
                Error.Set(context, "Список параметров мгновенных значений не должен быть пустым");
                return(false);
            }

            if (RequestType == enumEnrgyQualityRequestType.Archive)
            {
                if (ServerFromLook.Get(context) == null || ServerToLook.Get(context) == null)
                {
                    Error.Set(context, "Для архивных значений начальная и конечная дата должна быть определена");
                    return(false);
                }
            }

            try
            {
                var res = ARM_Service.DS_GetArchTech_Quality_LastValues(List_ti_id, ServerToLook.Get(context), TechParamTypes, false);
                if (res != null)
                {
                    if (res.Errors != null)
                    {
                        Error.Set(context, res.Errors);
                    }

                    List <TArchTechQualityValue> result;
                    if (res.LastValues != null && res.LastValues.TryGetValue(ti_id, out result))
                    {
                        Values.Set(context, result);
                    }
                }
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #28
0
        protected override bool Execute(CodeActivityContext context)
        {
            var buildID = Guid.NewGuid();

            //throw new Exception("Error !!!!!!!!!!"); // test exception

            try
            {
                var psList = Ps_List.Get(context);
                if (psList == null || psList.Count == 0)
                {
                    Error.Set(context, "Список ПС не может быть пустым");
                    return(false);
                }

                //TODO часовой пояс
                var res = ARM_Service.BPS_GenerateBalancePSExcel(buildID,
                                                                 psList,
                                                                 StartDateTime.Get(context),
                                                                 EndDateTime.Get(context),
                                                                 DiscreteType,
                                                                 DataSourceType,
                                                                 isPower, false, null);

                if (res != null)
                {
                    var generatedFile = new MemoryStream();
                    var res2          = ARM_Service.AUTODOCUM_LoadGeneratedZip(buildID);
                    if (res2 != null)
                    {
                        ReadAndWriteToAnotherStream(res2, generatedFile, false);
                        generatedFile.Seek(0, SeekOrigin.Begin);

                        Document.Set(context, generatedFile);
                        ResultReport.Set(context, res);
                    }
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }
Пример #29
0
        protected override bool Execute(CodeActivityContext context)
        {
            if (ps_id.Get(context) == null)
            {
                Error.Set(context, "не определен Идентификатор ПС");
                return(false);
            }

            var result = new List <TIinfo>();

            try
            {
                var res = ARM_Service.NSI_Get_TI_List_ForPS(ps_id.Get(context));
                if (res != null)
                {
                    foreach (var nti in res)
                    {
                        if (nti.TI != null && !nti.TI.Deleted)
                        {
                            result.Add(new TIinfo
                            {
                                TI_ID         = nti.TI.TI_ID,
                                PS_ID         = nti.TI.PS_ID,
                                TIName        = nti.TI.TIName,
                                TIType        = nti.TI.TIType,
                                TIATSCode     = nti.TI.TIATSCode,
                                Commercial    = nti.TI.Commercial,
                                Voltage       = nti.TI.Voltage,
                                SectionNumber = nti.TI.SectionNumber,
                                AccountType   = nti.TI.AccountType,
                                PhaseNumber   = nti.TI.PhaseNumber,
                                CustomerKind  = nti.TI.CustomerKind
                            });
                        }
                    }
                }

                TI_List.Set(context, result);
            }
            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }
            return(string.IsNullOrEmpty(Error.Get(context)));
        }
        protected override bool Execute(CodeActivityContext context)
        {
            try
            {
                var balanceFreeHierarchyUNs = new List <string> {
                    BalanceId.Get(context)
                };

                var balanceResult = ARM_Service.BL_GetFreeHierarchyBalanceResult(balanceFreeHierarchyUNs,
                                                                                 StartDateTime.Get(context),
                                                                                 EndDateTime.Get(context),
                                                                                 null,
                                                                                 TExportExcelAdapterType.toXLSx, true,
                                                                                 DiscreteType, EnumUnitDigit.Kilo, false,
                                                                                 EnumUnitDigit.Kilo, true, false, 3, 3, false, false, false);

                if (balanceResult != null)
                {
                    if (balanceResult.CalculatedValues == null || balanceResult.CalculatedValues.Count == 0)
                    {
                        throw new Exception("Документ не сформирован. Неверный идентификатор или баланс удален.");
                    }

                    var calculatedResult = balanceResult.CalculatedValues.First().Value;

                    if (calculatedResult.CompressedDoc == null)
                    {
                        throw new Exception("Документ пуст. Ошибка формирования");
                    }

                    var ms = new MemoryStream();

                    CompressUtility.DecompressGZip(calculatedResult.CompressedDoc).CopyTo(ms);
                    ms.Position = 0;
                    Document.Set(context, ms);
                }
            }

            catch (Exception ex)
            {
                Error.Set(context, ex.Message);
                if (!HideException.Get(context))
                {
                    throw ex;
                }
            }

            return(string.IsNullOrEmpty(Error.Get(context)));
        }