Thursday 14 May 2015

JDE EnterpriseOne Browser Experience Improvements

This is just a quick summary of a few of the settings you can change on your JAS instance to give the best user experience in browsers like Google Chrome or Mozilla Firefox as well as Internet Explorer. All of these settings can be found in the Web Runtime section of the jas.ini but changes should always be made using Server Manager.

Grid Global Page Size = 50

Back in the early 8.10 and 8.11 days this setting could have a major impact on web performance just due the amount of javascript that used to come down with the grid and the fact that PC's and terminal servers back then would struggle to process it all. These days those issues have long since disappeared so for the convenience of your users we recommend setting this to at least 50. If you leave it at the default you'll find that a lot grids will still only provide the user with the first 10 records on a find.

Use ActiveX Controls = False

ActiveX controls are going the way of the dinosaur with Microsoft announcing that Internet Explorer has reached the end of it's life. To enable a consistent experience across multiple browsers this should be set to false. Before doing this though you should be aware of the impacts.  Firstly your users won't be able to view Microsoft Office documents directly inside the browser window and also they will not be able to import directly from an Excel file (CSV and copy and paste will still work fine). The other major impact is that all of the text attachments currently in your JDE system will need to be converted to HTML format from RTF. You have two options on how to deal with this. You can let your users convert the text to HTML when they first view it after this setting has been changed or alternatively you can run the batch conversion to do it for them. Our recommendation is that it depends on how many F00165 records you have. If you have been on JDE for a significant amount of time then it is likely you have a large number of text attachments and in all likelihood most of those attachments will never be viewed again. In that case you may choose to just leave them and if users need to view existing attachments they can do the conversion on demand. Details on running the batch conversion can be found in the Oracle documentation.

UBE Content Disposition = False

This basically ensures that if the browser can handle the file type, ie the PDF file, then it will be opened and displayed automatically within the browser rather than having the browser prompt the user to save the file.

That's it, just a couple of simple changes can make the life of the user that little bit better. In our experience, due to the speed that it processes and handles JavaScript and Ajax, we strongly recommend using the Google Chrome browser for JDE as responsiveness is noticeably better than other browsers, especially Internet Explorer.

If you have any other settings that believe improve the user experience then please leave a comment below and I'll look to add them to this post.


Tuesday 12 May 2015

Displaying a Google Map in JD Edwards CafeOne

You've seen plenty of demos of all of the cool things that can be done with CafeOne but where to start. Here's a very simple walk through of enabling CafeOne by putting a Google Map in the Address Book app (P01012) and publishing it to all users.

The first step is to create a publishing entry to enable all of your users to see your published CafeOne element. To do this open P952336, click on add and give the list a name and description. You can then list out the roles or users that can see this content published to this list. In this example I'm allow all users to see CafeOne content so I've set the role to *PUBLIC.


You then need to enable the application for CafeOne. Open P952332 and create two entries to enable the Address Book form W01012A for CafeOne. One for *PUBLIC so that all users can view the content and a second for the role that will be defining the CafeOne page.


You'll note for the role that can publish I've chosen "Allow user to publish to pre-defined Publication List". This is the simplest approach so that you don't have to change the status of layouts once they're saved.


You can now go ahead and define the CafeOne page in the Address Book app. Open P01012 and select a record that has a mailing address specified to open the Address Book Revision form. If everything has been done correctly then you should see the Layout dropdown list on the top right of the form.



Now go to your user menu and you should see the Edit Current Page option at the bottom of the list. Click that to enable you to create a new layout. You should now see two options in the top left of your screen. As we haven't set up any template URL's you'll need to select the Create New Content option.



This will give you a popup with different options depending on your tools release but for 9.1.5 you should see either URL or EnterpriseOne Form. You need to drag the option you want onto the right hand side of the form and then drop it when you have set the appropriate size.  Once you've set the CafeOne frame size you can now enter the details of the URL you wish to show. In this case we'll be using the Google Maps embedded url which is https://maps.google.com/?q=500+Eldorado+Blvd+Broomfield+CO&t=m&z=14&output=embed

You can then give the URL and name and optionally a description. Now select the Dynamic Link URL radio button so that you can specify the URL query parameters based on the content in the form.



The good thing about Google Maps is it is very forgiving in terms of the content you put in the query string. To add values you should select the "q" parameter and change the operation from "remain as" to "is mapped to". At this point you can now add one or more elements from the form to create the query string. In this case I've chosen to add Mailing Name, Address Line 1, Address Line 2, City, State and Country.



Once you've included all of the values you require you can click the Save icon in the top left of the content editor and you should see the map appear with the address marked with a pin.



The next step is to save the layout by clicking on the Save Layout button in the top right of the screen. In this example we named the layout Address Book Map.

Now it is time to publish the layout to all of the other users. To do this go into the user overrides program P98950 and filter on your user profile and a UO Type of RI. Assuming you haven't created any other layouts you should only see one option.



Select the row and click on the Copy icon in the form toolbar. Enter in the *PUBLIC role on the copy form and click OK. This will effectively publish the layout to all users.


For a user to see the layout they will need to open the Address Book Revisions form and then select the layout from from the drop down list in the top right of the form.



And that's it, you've successfully published Google Maps in your Address Book Revisions form to all JDE users.

Monday 11 May 2015

Enabling Basic Google Analytics for JD Edwards EnterpriseOne 9.1.5

If you're comfortable with Google knowing how you use your ERP then here is a simple way to enable the Google Analytics engine for your JDE EnterpriseOne instance. These instructions are for the 9.1.5 tools but could just as easily be adapted to the older tools releases.

So the first thing you need is a Google Analytics account. There's plenty of information available on how to go about it so I'm not going to clutter the internet with yet another tutorial. If you need a starting point, here's Google's documentation.

To activate the data capture for Google Analytics you need to include some javascript. The best place I have found to inject this code at the moment is in the webgui.js file. Simply append the following code to the very end of the file:

    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
    ga('create', 'UA-XXXXXXXX-X', {"siteSpeedSampleRate": 100});
    ga('send', 'pageview');


You'll need to replace UA-XXXXXXXX-X with your own Google Analytics identifier.

Where is the webgui.js file you might ask... Assuming you're using Server Manager (I don't who isn't) then you'll want to update the deployment package found in the SCFHA folder on your JDE web server. Here's an example linux path you might use for you PY deployment:
/u01/jde_home/SCFHA/targets/WL_JPY910/owl_deployment/webclient.ear/app/webclient.war/share/js/webgui.js

That's it. If you restart your web instance the solution will redeploy with the new updated js file and you'll be away. Depending on your browser cache you may need to hit refresh to ensure the latest webgui.js is pulled down onto your client machine. You should then be able to log in to Google Analytics and watch the hits flow through as you navigate through the JDE applications.

Please be aware that this has not been heavily tested and is not supported by Oracle so if you do implement this change you do so at your own risk.