/// <summary>
        /// Расчитываем отчет
        /// </summary>
        private void RenderReport(MultiPsSelectedArgs args)
        {
            BusinessObjectHelper.BuildBusinessObjectsParams(_businessObjectName, args);

            LayoutGrid.RunAsync(() =>
            {
                string result = string.Empty;
                try
                {
                    var errs = new StringBuilder();
                    result   = StimulReportsProcedures.RenderReport(_xml, errs, args, Manager.Config.TimeZone);
                    if (errs.Length > 0)
                    {
                        Manager.UI.ShowMessage(errs.ToString());
                    }
                }
                catch (Exception ex)
                {
                    Manager.UI.ShowMessage(ex.Message);
                }

                return(result);
            }, rendered =>
            {
                if (string.IsNullOrEmpty(rendered) || rendered.Length <= 2)
                {
                    return;
                }

                _businessObjectName = string.Empty;
                _xml = null;
                try
                {
                    DesignerControl.ApplyRenderedReport(rendered);
                }
                catch (Exception ex)
                {
                    Manager.UI.ShowMessage(ex.Message);
                }
            });
        }
            public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
            {
                var propVal = value as string;

                if (propVal != null)
                {
                    if (propVal == string.Empty)
                    {
                        return("<Объекты не соответствуют типу отчета!>");
                    }

                    MultiPsSelectedArgs args = null;
                    try
                    {
                        args = propVal.DeserializeFromString <MultiPsSelectedArgs>();
                    }
                    catch (Exception ex)
                    {
                    }

                    if (args == null)
                    {
                        return("<Ошибка десериализации>");
                    }

                    var pss = args.PSList;
                    if (pss != null && pss.Count > 0)
                    {
                        var n = new StringBuilder();
                        foreach (var id in pss.Take(3))
                        {
                            if (id.ID == -1)
                            {
                                n.Append("<Все >");
                                break;
                            }

                            var hierObject = id.ToHierarchyObject();
                            if (hierObject == null)
                            {
                                continue;
                            }
                            n.Append(hierObject.Name).Append(", ");
                            if (n.Length > 400)
                            {
                                break;
                            }
                        }

                        if (n.Length > 2)
                        {
                            n.Remove(n.Length - 2, 1);
                        }

                        if (pss.Count > 3)
                        {
                            n.Append("...");
                        }
                        return(n.ToString());
                    }

                    //Manager.UI.ShowMessage("Выберите объекты!");
                    return("< Объекты не выбраны >");
                }
                return("");
            }