Exemplo n.º 1
0
        private void DisplayTableMetadataLinks()
        {
            if (!PXWeb.Settings.Current.Selection.MetadataAsLinks)
            {
                IPxUrl url = RouteInstance.PxUrlProvider.Create(null);
                if (PXWeb.Settings.Current.Database[url.Database].Metadata.UseMetadata)
                {
                    if (!string.IsNullOrWhiteSpace(PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel.Meta.MetaId))
                    {
                        PCAxis.Metadata.IMetaIdProvider man = PXWeb.Settings.Current.Database[url.Database].Metadata.MetaLinkMethod;

                        List <PCAxis.Metadata.MetaLink> links = man.GetTableLinks(PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel.Meta.MetaId, LocalizationManager.CurrentCulture.Name).ToList();

                        foreach (PCAxis.Metadata.MetaLink link in links)
                        {
                            HyperLink lnk = new HyperLink();
                            lnk.Text        = link.LinkText;
                            lnk.NavigateUrl = link.Link;
                            lnk.Target      = link.Target;
                            lnk.CssClass    = "meta_tablelink";
                            divTableLinks.Controls.Add(lnk);
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel == null)
                {
                    return;
                }

                PXModel  model = PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel;
                ListItem li;

                cboVariables.Items.Clear();
                li          = new ListItem(LocalizationManager.GetLocalizedString("PxWebMetadataSelectVariable"));
                li.Selected = true;
                cboVariables.Items.Add(li);

                foreach (Variable variable in model.Meta.Variables)
                {
                    li = new ListItem(variable.Name, variable.Code);
                    cboVariables.Items.Add(li);
                }
            }

            lblVariableHeader.Text = LocalizationManager.GetLocalizedString("PxWebMetadataVariableHeader");
            lblValuesHeader.Text   = LocalizationManager.GetLocalizedString("PxWebMetadataValuesHeader");

            PxUrl url = new PxUrl(null);

            _linkManager = PXWeb.Settings.Current.Database[url.Database].Metadata.MetaLinkMethod;
        }
Exemplo n.º 3
0
        public void SetMetaLinkMethod(string method)
        {
            _metaLinkMethod = method;

            if (string.IsNullOrEmpty(_metaLinkMethod))
            {
                _metaLinkCreator = new PCAxis.Metadata.MetaLinkManager();
            }
            else
            {
                try
                {
                    var typeString   = _metaLinkMethod;
                    var parts        = typeString.Split(',');
                    var typeName     = parts[0].Trim();
                    var assemblyName = parts[1].Trim();
                    _metaLinkCreator = (PCAxis.Metadata.IMetaIdProvider)Activator.CreateInstance(assemblyName, typeName).Unwrap();
                }
                catch (Exception)
                {
                    _metaLinkCreator = new PCAxis.Metadata.MetaLinkManager();
                    _logger.Error("Could not create MetaIdProvider '" + _metaLinkMethod + "' --> Default Meta Id provider created instead");
                }
            }
        }
Exemplo n.º 4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string db   = PxUrl.Database;
            string path = PxUrl.Path;

            _linkManager = PXWeb.Settings.Current.Database[PxUrl.Database].Metadata.MetaLinkMethod;
            Localize();
            InitializeMetadata(path);
            DisplayTableMetadataLinks();
        }
Exemplo n.º 5
0
        protected void Page_Load(object sender, EventArgs e)
        {
            //Path for selection should always contain tableid and not table name
            if (RouteInstance.RouteExtender != null && RouteInstance.RouteExtender.DoesSelectionPathContainTableName(this))
            {
                var linkItems = new List <LinkManager.LinkItem>();
                linkItems.Add(new LinkManager.LinkItem(PXWeb.PxUrl.TABLE_KEY, PxUrl.Table));
                string redirectLink = LinkManager.CreateLinkMethod("Selection.aspx", false, linkItems.ToArray());
                Response.Redirect(redirectLink, true);
            }

            if (RouteInstance.RouteExtender != null)
            {
                var  tableId      = RouteInstance.RouteExtender.GetTableIdByName(PxUrl.Table);
                bool hasTableData = RouteInstance.RouteExtender.HasTableData(tableId);

                if (!hasTableData)
                {
                    Response.Redirect(RouteInstance.RouteExtender.GetRedirectNoDataPath(tableId), true);
                }
            }

            ((PxWeb)this.Master).FooterText = "Selection";

            string lang  = PxUrl.Language;
            string db    = PxUrl.Database;
            string path  = PxUrl.Path;
            string table = PxUrl.Table;

            string partTable = "";

            _switchToCompactTxt = PCAxis.Web.Core.Management.LocalizationManager.GetLocalizedString("PxWebSwitchToCompactView");
            _switchToListTxt    = PCAxis.Web.Core.Management.LocalizationManager.GetLocalizedString("PxWebSwitchToListView");

            //Check if the queryStrings contains partTable
            if (QuerystringManager.GetQuerystringParameter("partTable") != null)
            {
                partTable = QuerystringManager.GetQuerystringParameter("partTable");
            }
            // Bug 273
            // If we have no builder the groupings should be reloaded
            if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModelBuilder == null)
            {
                VariableSelector1.ReloadGroupings = true;
            }

            if (PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel != null && PaxiomManager.QueryModel != null)
            {
                _previousModel = PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel;
                VariableSelector1.PreSelectFirstContentAndTime = false;
            }
            else
            {
                VariableSelector1.PreSelectFirstContentAndTime = PXWeb.Settings.Current.Selection.PreSelectFirstContentAndTime;
            }

            // Check if we are being called from a saved query with the ?select switch. If that is the case we should always clear the PxModel.
            bool clearModel = false;

            if (HttpContext.Current.Session["SelectionClearPxModel"] != null)
            {
                clearModel = (bool)HttpContext.Current.Session["SelectionClearPxModel"];
                HttpContext.Current.Session.Remove("SelectionClearPxModel");
            }

            PCAxis.Web.Core.Management.PaxiomManager.PaxiomModel = PXWeb.Management.PxContext.GetPaxiomForSelection(db, path, table, lang, clearModel);
            _linkManager = PXWeb.Settings.Current.Database[PxUrl.Database].Metadata.MetaLinkMethod;
            InitializeLayoutFormat();
            InitializeTableHeadings();

            if (!IsPostBack)
            {
                Master.HeadTitle = PCAxis.Web.Core.Management.LocalizationManager.GetLocalizedString("PxWebTitleSelection");
                //imgShowInformationExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif");
                //imgShowFootnotesExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif");
                //imgShowMetadataExpander.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(BreadcrumbCodebehind), "PCAxis.Web.Controls.spacer.gif");
                Master.SetBreadcrumb(PCAxis.Web.Controls.Breadcrumb.BreadcrumbMode.Selection);
                Master.SetH1TextMenuLevel();
                Master.SetNavigationFlowMode(PCAxis.Web.Controls.NavigationFlow.NavigationFlowMode.Second);
                Master.SetNavigationFlowVisibility(PXWeb.Settings.Current.Navigation.ShowNavigationFlow);
                InitializeVariableSelector();
                InitializeTableInformation();
                SelectionFootnotes.ShowNoFootnotes = PXWeb.Settings.Current.Selection.ShowNoFootnoteForSelection;
                InitializeMetatags();
                InitializeMetadata(path);
                //Check if the queryStrings contains partTable and the database type is CNMM
                //if so download subtable variables
                if (!string.IsNullOrEmpty(partTable))
                {
                    DatabaseInfo dbi = PXWeb.Settings.Current.General.Databases.GetDatabase(db);
                    if (dbi.Type == PCAxis.Web.Core.Enums.DatabaseType.CNMM)
                    {
                        SetValuesFromPartTable(partTable);
                    }
                }
            }

            VariableSelector1.MetaLinkProvider             = _linkManager;
            VariableSelector1.PxActionEvent               += new PCAxis.Web.Controls.PxActionEventHandler(HandlePxAction);
            VariableSelector1.MetadataInformationSelected += new VariableSelector.MetadataInformationSelectedEventHandler(HandleMetaDataInformationAction);
            VariableSelector1.LeaveVariableSelectorMain   += new VariableSelector.LeaveVariableSelectorMainEventHandler(HandleLeaveVariableSelectorMain);
            VariableSelector1.ReenterVariableSelectorMain += new VariableSelector.ReenterVariableSelectorMainEventHandler(HandleReenterVariableSelectorMain);

            if (_previousModel != null && _previousModel.IsComplete && !IsPostBack)
            {
                VariableSelector1.InitializeSelectedValuesetsAndGroupings(_previousModel);
            }
        }