Monday, 23 April 2018

Rinami Asset Performance Suite (RAPS) Achieves Oracle Validated Integration


PRESS RELEASE

Rinami Asset Performance Suite (RAPS) Achieves Oracle Validated Integration with Oracle’s JD Edwards EnterpriseOne

RAPS extends Oracle’s JD Edwards Enterprise to support sophisticated and large-scale capital asset management implementations

BROOMFIELD, COLORADO, April 23, 2018 - Rinami, a Gold level member of Oracle PartnerNetwork (OPN), today announced it has achieved Oracle Validated Integration of Rinami Asset Performance Suite (RAPS) version 1.0.0 with Oracle’s JD Edwards EnterpriseOne version 9.2. RAPS provides sophisticated enhancements to JD Edwards EnterpriseOne Capital Asset Management for complex preventive maintenance service schedules, multi-work order maintenance and service planning, and true condition assessment to drive preventive and corrective maintenance.

To achieve Oracle Validated Integration, Oracle partners are required to meet a stringent set of requirements that are based on the needs and priorities of the customers. “The integration of Rinami Asset Performance Suite with Oracle’s JD Edwards EnterpriseOne offers customers a powerful and robust way to quickly and efficiently manage a number of key areas within the capital asset management suite,” said Russell Codlin, President, Rinami Incorporated. “Having achieved Oracle Validated Integration with the Rinami Asset Performance Suite product suite, customers have the confidence of knowing that the integration has gone through a rigorous due diligence exercise and meets the stringent quality standards adhered to by Oracle.”

”Achieving Oracle Validated Integration gives our customers confidence that the integration between Rinami Asset Performance Suite version 1.0.0 and Oracle’s JD Edwards EnterpriseOne version 9.2 is functionally sound and performs as tested,” said David Hicks, vice president, Worldwide ISV, OEM and Java Business Development, Oracle.  “For solutions deployed on-premises, in the cloud, or both, Oracle Validated Integration applies a rigorous technical review and test process that helps to reduce deployment risk and improves the user experience of the partner’s integrated offering.”

About Rinami
Rinami is an ICT services provider formed in 2009 to deliver services to asset intensive businesses. The business has grown to now deliver integration systems, custom mobile applications and expert consulting services to customers across the world. Rinami has extensive expertise in delivering integrated applications into Enterprise Resource Planning (ERP) software, across multiple asset intensive businesses including mining and resources, agribusiness, logistics, multi-mode manufacturing services and local government sectors.

Our focus aim is to deliver business solutions to business problems. This approach means that the value of our services is immediately identifiable and the planned benefits on offer are quickly realized. From experience we can provide a deep understanding of computerized maintenance systems, data analytics, machine integration and cloud solutions.

The RAPS Product
RAPS comprises of three integrated modules

·         Service Logic
·         Condition Assessment
·         Shutdown Planning

Service Logic

The Service Logic module centralizes the definition of repetitive service cycles into re-usable “Cycle Type” elements, which define the service intervals for all meters/days and the sequence of “Cycle Step” service types in the cycle

The solution integrates the process of centralizing the definition of associated Cycle Step service types, for traditional non-cyclic service types and provides the ability to define the hierarchy of Asset and Equipment attributes and Category Codes which determine which Cycle Types are applicable

Features Include:
-  Manage PM Schedules centrally for similar Equipment
-  Service Types with defined Service Steps and Intervals are applicable to any Asset
-  Association template records automatically applied to complying Assets
-  Set Model Work orders consistently and correctly without duplication or omission
-  Flexible management for Overrides and Exceptions

Condition Assessment

The Condition Assessment module is an extension of the standard JDE Quality Management and Condition Base Maintenance that integrates to two modules to provide powerful conditional assessment functionality.

Organizations can define specific test methods (e.g. checklist items) that are then combined into a specification (checklist). This is then overlaid with asset or asset class specific tolerances to determine both failure and warning limits.

Recorded quality results can then be considered by the standard JDE Condition Based Maintenance system to trigger alerts, update PM schedules or create additional Work Orders.
The Condition Assessment can also trigger the Rinami Cantara Integration Platform integration for push notifications.

Shutdown Planning

The Shutdown Planning module is designed to greatly simplify the steps involved in managing multiple Work Orders when planning major maintenance events such as shutdowns or major services.

The module gives the user a single view of maintenance events (Parent Work Order) and all Work Orders assigned to the event. From here the user also has the ability to allocate additional Work Orders as well as deallocate assigned Work Orders. Scheduling changes can be applied at parent, work order or routing operation level and all dependent schedule elements, such as resource assignments, are automatically updated as required.

About Oracle Validated Integration
Oracle Validated Integration, available through the Oracle PartnerNetwork (OPN), gives customers confidence that the integration of a complementary partner software product with an Oracle “on-premises” Application has been validated and the products work together as designed. This can help customers reduce risk, improve system implementation cycles, and provide for smoother upgrades and simpler maintenance. Oracle Validated Integration applies a rigorous technical process to review partner integrations and partners who successfully complete the program are authorized to use the “Oracle Validated Integration” logo. For more information, please visit Oracle.com at https://solutions.oracle.com/scwar/scr/AboutPartners/validated-integration/index.html  

About Oracle PartnerNetwork
Oracle PartnerNetwork (OPN) is Oracle's partner program that provides partners with a differentiated advantage to develop, sell and implement Oracle solutions. OPN offers resources to train and support specialized knowledge of Oracle's products and solutions and has evolved to recognize Oracle’s growing product portfolio, partner base and business opportunity. Key to the latest enhancements to OPN is the ability for partners to be recognized and rewarded for their investment in Oracle Cloud. Partners engaging with Oracle will be able to differentiate their Oracle Cloud expertise and success with customers through the OPN Cloud program - an innovative program that complements existing OPN program levels with tiers of recognition and progressive benefits for partners working with Oracle Cloud. To find out more visit: http://www.oracle.com/partners.

###
Trademarks
Oracle and Java are registered trademarks of Oracle and/or its affiliates.
Rinami is a registered trademark of Rinami Pty Ltd.

For additional information, contact:

Russell Codlin                                                                         Alistair McGregor
Rinami Incorporated                                                               Rinami Pty Ltd
11001 W 120th Ave                                                                 1B/23 Main Street
Suite 400                                                                                 Varsity Lakes
Broomfield                                                                              Queensland 4227
Colorado 80021                                                                      Australia
rcodlin@rinami.com                                                               amcgregor@rinami.com


Monday, 3 July 2017

A better scheduler for JD Edwards EnterpriseOne

The Cantara Integration Platform provides a powerful solution for creating RESTful services for Oracle JD Edwards EnterpriseOne as well as a comprehensive platform of mobile applications and client software development kits for mobile and desktop applications.

What you may not know is that the solution also incorporates a powerful batch scheduling tool at no extra cost. The scheduling platform overcomes a number of key deficiencies in the standard JD Edwards EnterpriseOne batch scheduler and at a price point that makes deployment an easy decision.

So, what are the key pain points of the JD Edwards EnterpriseOne batch scheduler and how does the Cantara Advanced Job Scheduler overcome these?

Dependency Management

There are only two ways to deal with inter-job dependencies with the standard JD Edwards scheduler and neither of them are very appealing. The first, not so safe way, is to just make sure that jobs are scheduled far enough apart that the first job is finished before the second one starts. Of course, there is no guarantee that the first job will not be held up unexpectedly and the second job will just kick off any way.

The second, more common method, is to schedule all dependent jobs in a single threaded queue. Unfortunately, this is a very inefficient method and leads to extended batch processing windows, especially when there are multiple jobs involved.

The Cantara Advanced Job Scheduler has a very clever way of overcoming this problem and making the overall batch schedule much easier to manage. The first element is to enable batch jobs to be scheduled in groups with dependency definition within the group. The second element to the solution is the ability to define dependencies between groups. Let’s look at these two elements in more detail.

Group Scheduling

Generally, day end processing incorporates several closely related batch jobs that must be appropriately sequenced. A good example of this the manufacturing day end batch jobs. Within the Cantara scheduler can you can define a manufacturing day end group and place within this the manufacturing accounting and work order commitments repost batch jobs. You can define the group as being sequential on success, which basically means that each job within the group must complete before the next job is submitted in the order specified. What this means that rather than having to schedule 5 batch jobs independently, the user only needs to schedule the group. If any of the jobs fails then the group will stop processing and a notification email will be sent to the designated monitor for that group. Cantara also supports parallel submission within a group if dependency is not an issue.

Group Dependencies

On top of group scheduling, Cantara then allows the definition of inter-group dependencies. So, to use the manufacturing account group example, you can also define a GL batch post group and make this dependent on the completion of the manufacturing accounting group. Cantara supports multiple dependency types include submit on success, submit on completion (even in the prior group has errored) or submit on start which means that group b won’t start before group a but can run in parallel.

The added benefit of inter-group dependencies is that a single group can be dependent on the completion of an unlimited number of other groups. In the case of GL batch post, we may require that manufacturing accounting, sales day end and AR/AP processing have been completed before the GL batch post is submitted. This enables users to schedule the three prior groups to run in parallel thus maximizing system utilization and minimizing the window within which the day end processing must run.

Schedule Monitoring

The JD Edwards schedule does not contain any effective method of schedule monitoring and thus organizations generally must revert to third party tools that monitor the JD Edwards database. This approach is complicated and not easily repeatable as the parameters that constitute failure tends to differ between jobs.

The Cantara Advanced Job Scheduler has a simple monitoring and notification system that allows users to define notification triggers and to incorporate standard enterprise system monitoring tools if required. Not only does Cantara monitor the state of the submitted batch job but it also tracks the run time of the scheduling group. Users can define a minimum, target and maximum run time for each group and can decide if a group executing outside of these tolerances constitutes a failure. The maximum run time is an easy metric and generally indicates that a batch job has encountered a problem either through incorrect data selection, invalid processing logic that has caused an infinite loop or system performance problems. As soon as the maximum run time is exceeded a notification is sent the group monitor informing of the issue and Cantara can also cease execution of the group in this instance based on group configuration. The minimum run time threshold is utilized to ensure that a scheduled group has completed some data processing. There’s nothing worse that assuming the batch job has processed successfully only to find that all the report displays is a message stating “No Data Selected”.

In addition to this, enterprise monitoring tools can interrogate the state of the batch scheduler and check for failed groups either through REST services published by Cantara or direct access to the Cantara scheduler database if preferred.

Job Output from Cantara Console or via notification

Cantara allows access to the PDF or CSV output of JD Edwards batch jobs directly from the Cantara Administration Console. In addition, you can choose to have these outputs emailed to one or more subscribers automatically on job completion.

Restarting the Scheduler

How many times has an organization stop their batch scheduler for a period of time, forgotten to purge the missed jobs, restarted the scheduler and then seen their batch queue fill with jobs that are not required. The Cantara Advanced Job Scheduler provides a simple method to deal with this situation. There are two options for each scheduled group. The first is to just skip the execution until the next scheduled trigger point and the second is to submit the group once immediately before then resuming the normal schedule. As Cantara still maintains dependencies between groups it makes stopping and starting the scheduler a painless experience.

Exclusion periods

One common requirement for organizations is to prevent jobs like GL batch post from running whilst month end processing is being carried out. For most, this requires the schedule to be manually adjusted to disable the jobs and then another adjustment to reenable them which can be a tedious process. The Cantara scheduler allows for exclusion calendars to be defined and applied to multiple scheduling groups. In simple terms, you may choose to have a batch post job run every 15 minutes and then exclude execution for three days during month end processing so that it can be run manually as required.

Processing Option overrides and Variables

A common headache for users of the JD Edwards scheduler is the requirement to actively maintain processing options and data selection that incorporates things like processing date, current financial period, or multiple changing business units. The Cantara scheduler overcomes this limitation with a couple of powerful features. The first is that the Cantara scheduler can override processing options and data selection on report submission. This allows users to define a single version within JD Edwards and then reuse that version multiple times, with different processing options and data selection, within the Cantara scheduler. So, when changes are required, especially to data selection, it is no longer a requirement for the version to be promoted through multiple environments and for a JD Edwards package to be built and deployed for those change to take effect.

The second feature is the use of variables within processing options, report interconnects and data selection. Let’s say for example that you have multiple reports which all require the current financial period to be defined. Within Cantara you would define a variable that equates to the current financial period and then apply this variable to each of the reports that requires it. Now a change to the variable value is automatically applied to all reports that utilize that variable making period close and changes a simple task. In addition, Cantara variables support basically calendar arithmetic. This allows users to define data selection and processing option dates that are calculated from today’s date. This means you can now set a report processing date to be Today minus or plus any number of days.

Complex Scheduling Patterns

With the Cantara scheduler, a wide range of scheduling patterns can be achieved. No longer are you limited to a static interval based of a start time. You can choose simple patterns like run every 10 minutes or 24 hours up to far more complex patterns such as run at 5:30pm every Mon, Wed and Fri and only in the months of October to December. In addition, Cantara is JD Edwards date pattern aware which means jobs can be scheduled based on the financial date pattern of any company. You may wish to schedule jobs to run on the last day of the period or the first weekday of the period or the last Friday of every quarter. All of these options are possible with the Cantara scheduler and, combined with the advanced dependency management, an extremely efficient and robust job schedule can be defined for any organization.

High Availability and Load Balancing

A major pain point for organizations that are required to meet strict service level agreements and availability targets is the fragility of the JD Edwards scheduler. The Cantara Advanced Job Scheduler overcomes this issue in two ways. Firstly, the Cantara Integration Platform supports horizontal scaling which means that multiple Cantara instances can run the same schedule at the same time. Thus, if a single Cantara instance fails the schedule will continue to run as expected. Secondly, the Cantara Integration Platform supports load balancing and fail over between JD Edwards batch servers. No longer is the JD Edwards schedule required to run on a single JD Edwards enterprise server and the processing can be spread across multiple servers. If any single batch server fails, Cantara automatically removes it from the group and continues processing on the remaining servers. In addition, Cantara batch server groups are self-healing so if it detects that the batch server has resumed operation it will be automatically included back in the group.

Multiple Environments

The Cantara scheduler allows scheduling across multiple JD Edwards environments. For example, you may choose to define a full job schedule against the CRP environment before changing over to the UAT and then finally the production environment. Alternatively, you may choose to have a mixed schedule with some jobs running in production and other running in non-production. All of these options are available with the Cantara scheduler.

Non-JD Edwards Scheduling

Cantara provides a flexible extension framework which can be included in the job schedule. This means that jobs that are not part of JD Edwards can be incorporated into the schedule, including dependencies. Out of the box Cantara comes with extensions for script execution (for all platforms) and AIS service execution. An example of where this is useful would be to kick of ETL jobs that extract data into a data warehouse once the day end processing has completed. Another option would be to populate Z Tables within JDE prior to executing the import batch job. Extensions can be written for any number of different applications and situations and therefore greatly extend the reach and flexibility of the Cantara Advanced Job Scheduler.

In summary, the Cantara Advanced Job Scheduler is everything that the standard JD Edwards batch scheduler is not. Combine this with Oracle Validated Integration and all of the integration and mobility features of the Cantara Integration Platform and you have a powerful tool to greatly improve the performance of your ERP platform. If you would like further details on how the Cantara Advanced Job Scheduler can be utilized within your business, please contact us at Rinami.

Monday, 10 April 2017

Work Order Activity Rules OK?

Setting up your work order activity rules for equipment or service management work orders is a critical piece of the puzzle. This is a quick guide on how it's done and what to consider for different types of orders.

Tip #1: Do not use numeric work order statuses for equipment and service work orders if you can avoid it. The reason being is that manufacturing work orders require numeric status values and mixing the two together can cause all sorts of head aches. And don't fall into the trap of thinking you'll never use manufacturing work orders because chances are you will, especially if you assemble kits or have rotable items.

For this post we'll use a corrective maintenance work order for the example. Order activity rules are defined by the combination of document type and work order type so in this example we will use WM for our maintenance orders with a type 1 which indicates are corrective as opposed to say a preventative activity.

Work order activity rules are defined by application P4826. Here are the rules we have set for this order type:

The first line item shown is the default status for this work order type. Because this is a corrective work order we are creating the order at effectively an unapproved status. Now you can have workflow kick in for the process of approvals but that is outside of the scope of this post. The Next Status field defines the default next status for the work order. The fields Allowed Status 1 through 5 define alternative allowed statuses.

So for a corrective work order at status M the options are to either approve the work by moving it to status MA or alternatively to reject the work request by moving it to status MM which is cancelled.

The other columns in the grid are as follows:

  • Subledger Inactive - when set to I this prevents any financial transactions being created or updated on a work order at this status. So it in effect locks the subledger.
  • Maint. Status - if this work order is linked to a PM Schedule record a move to this status will cause the PM Schedule item to change status.
  • Alert Status - if this work order is linked to a Condition Based Maintenance alert then moving to the selected status will update the associated alert to the defined status in this column.
  • Lock Flag - this determines whether changes can be made to the work order at this status. There are multiple options which will cover further in this post.
  • Edit Authority - this indicates the role that can make changes to claims at each status within Warranty Management. This is outside of the scope of this post.
So coming back to the first line, you can see that the subledger is inactive but the work order is open to being updated. The inactive flag is set at this status because we do not want users performing any transactions against an unapproved order. This includes being able to raise either requisitions or purchase orders against this work order.

You'll note the last line on this status flow is MM and there are no alternative statuses available. So if a user changes the work order status to cancelled then they will be unable to change the status.

With the subsequent lines we then define a default status plus a number of alternative statuses. Overall these rules should follow your business process flow for work orders. In this example the important points to note are:

  1. Once the order is approved there is still no ability to raise requisitions or purchase orders against it. The order must be moved to W/O in PLanning or higher status. You can also still choose to cancel the order at this point.
  2. W/O in Planning allows subledger transactions. Whilst this is required as the planner may need to raise orders against it, this does mean that one of the key controls to prevent actual financial transactions from being executed has been removed. That is, a user may be able to book time against a work order still in a planning state.
  3. The MH status is effectively the status where the work starts. All statuses up to this point are different states of planning.
  4. In this example, a work order at MH status can still be cancelled. This may not be appropriate as it is not recommended that a work order with costs already booked to it is cancelled. You may wish to introduce an alternative status for orders that are closed without the work being successfully completed.
  5. MJ status indicates that the all work order the order has been completed. We cannot lock the subledger at this status because there will still be financial transactions to complete. One of the main pain points for this is the processing of accounts payable. Without an unlocked subledger you will be unable to match vouchers. You'll notice at MJ status we set the locked flag to 3. This means that the work order can still be modified but when this status change occurs the completed date will be automatically populated.
  6. MK is the closed status of the work order where all financial activities have been completed. The lock flag is now changed to 4 to prevent any changes to the order. We still allow the status to move back to MJ as there may be a requirement to book further costs to the order.
Tip #2: If you are using PM schedules or Condition Based Maintenance alerts then MJ would be the status where you update the related record status. So in the case of the PM Schedule you would set the status 99 to indicate that the work has been completed and the PM task can be scheduled again. With the CBM alert you would set it to work completed so that it can be closed out.

Obviously you can make your work order status flows as complex or as simple as you wish. As minimum it is recommended that you have at least the following statuses:
  1. Work order ready
  2. Work in progress
  3. Work completed
  4. Work order closed
  5. Work order cancelled




Friday, 31 March 2017

See you at Collaborate 17

THE WORD IS OUT. There is ONE event that delivers the full spectrum of Oracle Technology and Applications education that you need to boost results all year long. Produced by three independent users groups, IOUG, OAUG and Quest, COLLABORATE 17: Technology and Applications Forum 
for the Oracle Community delivers:

  • 1,250+ sessions and panels packed with first-hand experiences, case studies and practical “how-to” content
  • Education and training for functional users, technical users and the hybrid user
  • Breaking product news and insider information from Oracle executive 
  • management and developers
  • Ample opportunities to build your personal and professional networks, including special interest group (SIG) meetings, geographic networking events and receptions
  • An Exhibitor Showcase packed with products and solutions providers who can help you solve your specific challenges
  • Unique events such as the Women in Technology Forum connect with key women who are examples of success in a fast-changing environment

Rinami will again be attending and presenting at Collaborate 2017 in Las Vegas on April 2 - 6. 

We have sessions:

Venti, Double-Caffeinated, Mobile Field Service Solution where you can see how Espresso Mechanics, a division of Cerebos Foods, was able to leverage the Cantara platform to deliver a modern field service management solution to both their internal technicians as well as sub-contract resources.
9:45AM - 10:45AM Monday Apr 3, 2017
South Pacific H

Modernize your existing JDE with mobility and integration to how you can extend the life of your existing Oracle JD Edwards EnterpriseOne system through the strategic deployment of integrations and mobile solutions with Cantara.
1:30PM - 2:30PM Tuesday Apr 4, 2017
South Pacific A

And please come along to booth 328 to see a number of IoT and mobile solutions and have a chat to us about how Rinami can support your business.

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.