IOSCacheRefresh

 8 Replies
 0 Subscribed to this topic
 27 Subscribed to this forum
Sort:
Author
Messages
Greg Moeller
Veteran Member
Posts: 1498
Veteran Member

    We are being told by GSC that people who use paint screens in 9.0.1 need to be able to run IOSCacheRefresh by themselves.  Since this utility is (if I understand things correctly) only available to those that are designated with PortalAdmin=Yes.

    Is there a way a non-PortalAdmin can run this utility/servlet?

    Thanks much,

    -Greg

    Jeff White
    Veteran Member
    Posts: 83
    Veteran Member
      Are you talking 9.0.1 Apps or 9.0.1 Env? We are on 9.0.1.4 Env and 9.0.0.4 Apps and we have users that use paint screens and do not have access to IOSCacheRefresh.

      Jeff
      Greg Moeller
      Veteran Member
      Posts: 1498
      Veteran Member
        Yes, 9.0.1 apps and 9.0.1.4 env. We are being told by GSC that for these particular paint screens (and I can't tell you which ones without some digging) users are being required to run IOSCacheRefresh.
        Norm
        Veteran Member
        Posts: 40
        Veteran Member
          My experience with IOSCacheRefresh is that it only would need to be run when a program changes or gets added. So, I will tend to run one when migrating changes to production.

          I don't think that's specific to 9.0.1, however, it's been a good practice since Lawson released Portal.

          My concern, reading your email, is people doing paint screens in the first place. Please tell me this is for a non-Production environment
          riegerj
          Veteran Member
          Posts: 44
          Veteran Member
            I have only had to use IOSCacheRefresh with either program changes or if security (either LAUA or LS) is not propagating quickly enough. I was told to be cautious with using it because it resets the screens so they will load a little slower (like the first time you load a screen in portal it is slower than with normal speed). I can't see how people who just use paint screens would need access. Can they just request a refresh be done by one of the existing administrators?
            soonerb
            New Member
            Posts: 2
            New Member
              I am also interested in this question but for other reasons. We are trying to lock ESS users out during payroll and direct them to a link indicating no changes can be made during this time due to payroll processing, etc.

              The only problem is it requires an IOSCacheRefresh for it to take effect. Without setting these users to be portal admin's I'm still trying to find a viable work around.
              Joe O'Toole
              Veteran Member
              Posts: 314
              Veteran Member

                You need to do an ioscache refresh to apply book mark changes made in ESS. It's a little tricky to do , but you can automate the refresh with an http call. I change certain bookmarks to display an "option not available" page during our payroll runs.

                sped15
                New Member
                Posts: 2
                New Member
                  Joe, how do you do the automation of the IOSCache refresh? We are able to put the HTML call into a bookmark, but finding the person using the bookmark needs to be a portal admin. Is there anyway around that?
                  Joe O'Toole
                  Veteran Member
                  Posts: 314
                  Veteran Member

                    You need to script the http call something like this:

                    cscript //nologo iosref.js

                    where iosref.js has the xml code and passes encrypted credentials in the authentication string that is generated in base64. For some reason I had to issue the xmlopen.get twice for this to work - maybe it's pushing a CR or something to get the login to work in the backround.

                    sUser = "http://server.domain.com/sso/SSOServlet?_action=LOGIN&_ssoUser=lawsonadmin&_ssoPass=thepassword";
                    sUser2 = "http://server.domain.com/servlet/IOSCacheRefresh";
                    objServerXml = new ActiveXObject("MSXML2.ServerXMLHTTP");
                    objServerXml.open("GET", sUser, false);
                        Authentication = "bGF3xyzuYWR12346IUxhd456bg";
                        objServerXml.setRequestHeader("Authorization", "Basic " + Authentication);
                        objServerXml.setRequestHeader("Content-Type", "Text/xml");
                        objServerXml.send(); var objXMLResponse = new ActiveXObject("MSXML2.DOMDocument");
                    objXMLResponse.loadXML(objServerXml.responseText);
                    WScript.Echo(objServerXml.responseText);
                    objServerXml.open("GET", sUser2, false);
                        Authentication = "bGF3xyzuYWR12346IUxhd456bg";
                        objServerXml.setRequestHeader("Authorization", "Basic " + Authentication);
                        objServerXml.setRequestHeader("Content-Type", "Text/xml");
                        objServerXml.send(); var objXMLResponse = new ActiveXObject("MSXML2.DOMDocument");
                    objXMLResponse.loadXML(objServerXml.responseText);
                    WScript.Echo(objServerXml.responseText);