Esempio n. 1
0
        private void openReport(NameValueCollection nvc)
        {
            string id = nvc["id"];

            if (string.IsNullOrEmpty(id))
            {
                return;
            }

            SCDirector director = new SCDirector("master", "en");

            if (director.ObjectExists(id))
            {
                ReportItem rItem = director.GetObjectByIdentifier <ReportItem>(id);
                foreach (string key in nvc.Keys)
                {
                    if (key.Contains("^"))
                    {
                        string[] item_parameter = key.Split('^');
                        Guid     g = new Guid(item_parameter[0]);

                        ReferenceItem ri = rItem.FindItem(g);
                        if (ri != null)
                        {
                            ri.SetAttributeValue(item_parameter[1], nvc[key]);
                        }
                    }
                }
                Current.Context.ReportItem = rItem;
                Current.Context.Report     = null;
                updateInterface(null);
                //updateParameters(null);
                //new ReportRunner().RunCommand(null);
            }
        }
        private static void InitializeColumns(BaseViewer oViewer, string columnsXml)
        {
            oViewer.Columns = new List<BaseColumn>();
            if (!string.IsNullOrEmpty(columnsXml))
            {
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(columnsXml);
                XmlNodeList columnNodes = doc.DocumentElement.SelectNodes("Column");

                Database db = Sitecore.Configuration.Factory.GetDatabase(Settings.Instance.ConfigurationDatabase);
                Item ViewerColumnFolder = db.GetItem(Settings.Instance.ViewerColumnsFolder);
                SCDirector director = new SCDirector("master", "en");

                for (int i = 0; i < columnNodes.Count; i++)
                {
                    string name = columnNodes[i].Attributes["name"].Value;
                    Item item = ViewerColumnFolder.Axes.GetItem(name);
                    ColumnItem ci = director.LoadObjectFromItem<ColumnItem>(item);

                    ci.Header = columnNodes[i].InnerText;

                    //If this is the wildcard item populate the name too
                    if (item.Name == "*")
                        ci.Name = name;

                    if (columnNodes[i].Attributes["attributes"] != null)
                        ci.Attributes = columnNodes[i].Attributes["attributes"].Value;

                    oViewer.Columns.Add(BaseColumn.Create(ci));
                }
            }
        }
        public static ReportItem CreateFromParameters(NameValueCollection nvc)
        {
            Assert.IsNotNull(nvc, "Incorrect Parameters Format");
            var id = nvc["id"];

            if (id == null)
            {
                return(null);
            }
            var director = new SCDirector("master", "en");

            if (!director.ObjectExists(id))
            {
                throw new Exception("Report has been deleted");
            }

            var reportItem = director.GetObjectByIdentifier <ReportItem>(id);

            foreach (string key in nvc.Keys)
            {
                if (key.Contains("^"))
                {
                    var item_parameter = key.Split('^');
                    var guid           = new Guid(item_parameter[0]);

                    var ri = reportItem.FindItem(guid);
                    if (ri != null)
                    {
                        ri.SetAttributeValue(item_parameter[1], nvc[key]);
                    }
                }
            }
            return(reportItem);
        }
Esempio n. 4
0
        public void Start(ClientPipelineArgs args)
        {
            if (!args.IsPostBack)
            {
                Util.ShowItemBrowser(
                    "Select the report",
                    "Select the report",
                    "Database/32x32/view_h.png",
                    "Select",
                    Current.Context.Settings.ReportsFolder,
                    Current.Context.ReportItem == null ? Current.Context.Settings.ReportsFolder : Current.Context.ReportItem.Path,
                    Current.Context.Settings.ConfigurationDatabase);
                args.WaitForPostBack();
            }
            else
            {
                if (!Sitecore.Data.ID.IsID(args.Result))
                {
                    return;
                }
                Database database = Sitecore.Configuration.Factory.GetDatabase(Current.Context.Settings.ConfigurationDatabase);
                Sitecore.Diagnostics.Assert.IsNotNull(database,"no configuration databsae");

                Item item = database.GetItem(args.Result);

                Sitecore.Diagnostics.Assert.IsNotNull(item, "report item cannot be loaded");

                switch(item.Template.Key)
                {
                    case "report":
                    SCDirector director = new SCDirector(Current.Context.Settings.ConfigurationDatabase, "en");

                    ReportItem rItem = director.LoadObjectFromItem<ReportItem>(item);
                    if (rItem != null)
                    {
                        Current.Context.ReportItem = rItem;
                        Current.Context.Report = null;
                        Sitecore.Context.ClientPage.SendMessage(this, "ASR.MainForm:update");

                        // Sitecore.Context.ClientPage.SendMessage(this, "ASR.MainForm:toolbarupdate");
                    }
                        break;

                    case "saved report":

                    Message m = Message.Parse(this, "ASR.MainForm:openlink");
                    System.Collections.Specialized.NameValueCollection nvc =
                    Sitecore.StringUtil.ParseNameValueCollection(item["parameters"], '&', '=');

                    m.Arguments.Add(nvc);
                    Sitecore.Context.ClientPage.SendMessage(m);
                    break;
                }

            }
        }
Esempio n. 5
0
        public void Start(ClientPipelineArgs args)
        {
            if (!args.IsPostBack)
            {
                Util.ShowItemBrowser(
                    "Select the report",
                    "Select the report",
                    "Database/32x32/view_h.png",
                    "Select",
                    Current.Context.Settings.ReportsFolder,
                    Current.Context.ReportItem == null ? Current.Context.Settings.ReportsFolder : Current.Context.ReportItem.Path,
                    Current.Context.Settings.ConfigurationDatabase);
                args.WaitForPostBack();
            }
            else
            {
                if (!Sitecore.Data.ID.IsID(args.Result))
                {
                    return;
                }
                Database database = Sitecore.Configuration.Factory.GetDatabase(Current.Context.Settings.ConfigurationDatabase);
                Sitecore.Diagnostics.Assert.IsNotNull(database, "no configuration databsae");

                Item item = database.GetItem(args.Result);

                Sitecore.Diagnostics.Assert.IsNotNull(item, "report item cannot be loaded");

                switch (item.Template.Key)
                {
                case "report":
                    SCDirector director = new SCDirector(Current.Context.Settings.ConfigurationDatabase, "en");

                    ReportItem rItem = director.LoadObjectFromItem <ReportItem>(item);
                    if (rItem != null)
                    {
                        Current.Context.ReportItem = rItem;
                        Current.Context.Report     = null;
                        Sitecore.Context.ClientPage.SendMessage(this, "ASR.MainForm:update");

                        // Sitecore.Context.ClientPage.SendMessage(this, "ASR.MainForm:toolbarupdate");
                    }
                    break;

                case "saved report":

                    Message m = Message.Parse(this, "ASR.MainForm:openlink");
                    System.Collections.Specialized.NameValueCollection nvc =
                        Sitecore.StringUtil.ParseNameValueCollection(item["parameters"], '&', '=');

                    m.Arguments.Add(nvc);
                    Sitecore.Context.ClientPage.SendMessage(m);
                    break;
                }
            }
        }
        private static void InitializeColumns(BaseViewer oViewer, string columnsXml)
        {
            oViewer.Columns = new List <BaseColumn>();
            if (!string.IsNullOrEmpty(columnsXml))
            {
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(columnsXml);
                XmlNodeList columnNodes = doc.DocumentElement.SelectNodes("Column");

                Database   db = Sitecore.Configuration.Factory.GetDatabase(Settings.Instance.ConfigurationDatabase);
                Item       ViewerColumnFolder = db.GetItem(Settings.Instance.ViewerColumnsFolder);
                SCDirector director           = new SCDirector("master", "en");

                for (int i = 0; i < columnNodes.Count; i++)
                {
                    string     name = columnNodes[i].Attributes["name"].Value;
                    Item       item = ViewerColumnFolder.Axes.GetItem(name);
                    ColumnItem ci   = director.LoadObjectFromItem <ColumnItem>(item);

                    ci.Header = columnNodes[i].InnerText;

                    //If this is the wildcard item populate the name too
                    if (item.Name == "*")
                    {
                        ci.Name = name;
                    }

                    if (columnNodes[i].Attributes["attributes"] != null)
                    {
                        ci.Attributes = columnNodes[i].Attributes["attributes"].Value;
                    }

                    oViewer.Columns.Add(BaseColumn.Create(ci));
                }
            }
        }
        public static ReportItem CreateFromParameters(NameValueCollection nvc)
        {
            Assert.IsNotNull(nvc, "Incorrect Parameters Format");
              var id = nvc["id"];
              if (id == null) return null;
              var director = new SCDirector("master", "en");
              if (!director.ObjectExists(id)) throw new Exception("Report has been deleted");

              var reportItem = director.GetObjectByIdentifier<ReportItem>(id);

              foreach (string key in nvc.Keys)
              {
            if (key.Contains("^"))
            {
              var item_parameter = key.Split('^');
              var guid = new Guid(item_parameter[0]);

              var ri = reportItem.FindItem(guid);
              if (ri != null)
              {
            ri.SetAttributeValue(item_parameter[1], nvc[key]);
              }
            }
              }
              return reportItem;
        }
Esempio n. 8
0
        private void openReport(NameValueCollection nvc)
        {
            string id = nvc["id"];
            if (string.IsNullOrEmpty(id))
                return;

            SCDirector director = new SCDirector("master", "en");
            if (director.ObjectExists(id))
            {
                ReportItem rItem = director.GetObjectByIdentifier<ReportItem>(id);
                foreach (string key in nvc.Keys)
                {
                    if (key.Contains("^"))
                    {
                        string[] item_parameter = key.Split('^');
                        Guid g = new Guid(item_parameter[0]);

                        ReferenceItem ri =  rItem.FindItem(g);
                        if (ri != null)
                        {
                            ri.SetAttributeValue(item_parameter[1], nvc[key]);
                        }

                    }
                }
                Current.Context.ReportItem = rItem;
                Current.Context.Report = null;
                updateInterface(null);
                //updateParameters(null);
                //new ReportRunner().RunCommand(null);
            }
        }