Showing results for 
Search instead for 
Do you mean 
Community Home Request Access Read Blogs Share Your Ideas Search Community View My Settings
Reply
Nickel Contributor
Posts: 109
Registered: ‎08-17-2009

Tab Order is not working in SLX Web

I have recently noticed an issue with storing the tab order under any level. Anybody is having the same issue?  I have tried changing the default tab order and logged out of SLX and logged back in but I don't see the changes. 

Copper Elite Contributor
Posts: 40
Registered: ‎03-31-2010

Re: Tab Order is not working in SLX Web

The issue you're facing is that once a user has logged in the application saves their custom tab layout which always overrides your default layout. 

 

We had a requirement where we always wanted users returned the default tab layout each time the login, so while they could play with tab layouts during their session, the next time the logged in they would be returned to default layout.  While this wouldn't meet your needs you could probably adapt the code to do this conditionally where desirable.

 

Basically we added a custom Module to the contact page which runs before the contact.aspx is rendered client side and we can delete their customized layout.  See code snippet below:

 

            TabWorkspace tabs = _parentWorkItem.Workspaces["TabControl"] as TabWorkspace;
            if (tabs == null) return;



            if (tabs != null)
            {
                if (AppContext != null && slxUserService != null)
                {
                    // Only need to reset once per session so check the Application Context if we have already done this.
                    if (!AppContext.HasContext("ContactTabsReset"))
                    {
                        if (currentUserid.Trim().ToUpper() != "ADMIN")
                        {
                            //Clear Saved TabWorkspace layout for each session
                            sb = new System.Text.StringBuilder();
                            sb.Append("DELETE FROM sysdba.VIRTUALFILESYSTEM");
                            sb.Append(string.Format(@" WHERE (ITEMPATH LIKE '\Configuration\Application_User\SlxClient\{0}\ASP.contact_aspxDetail\TabWorkspace-E53DA2EE-942A-4b9d-8885-55C2EF1A4E4A.xml')", user.UserName));
                            Sage.SalesLogix.API.MySlx.Data.ExecuteSql(sb.ToString());
                            AppContext.SetContext("ContactTabsReset", true);
                        }
                        //20140119.jws.end
                    }
                }
            }

 Hope that helps.

 

 

 

 

James Sutton