Rocela Conference Sponsor at the Scotland OUG 13th June, Linlithgow

by Linda Anderson

Rocela is delighted to announce that we are a conference sponsor for this year’s Scotland OUG on Wednesday 13th June in Oracle Linlithgow. Rocela will be in the sponsor area at our stand at the event and also, our Oracle experts in conjunction with client representatives will be presenting on the following:

Rocela/ScottishPower – ‘Real Life Experience of an E-Business Suite 12.1.3 upgrade for
ScottishPower’

Rocela – ‘Custom Extensions of Oracle E-Business Suite R12 – A Customer View’

If you have not yet registered, please go to the registration page and follow the instructions set out.

This event will provide some extremely useful opportunities for you to exchange ideas, success stories and product challenges with your industry peers, other Oracle users and IT gurus. You will also hear from specialist keynote and guest speakers, including our own speakers, who will bring you all the latest information and updates – you can see the full agenda here.

Within the sponsor area, you will get the chance to speak with leading specialists including our own Oracle experts on all things Oracle, such as R12 Upgrades, Oracle E-Business Suite Managed Services, DBA Services and enterprise application Software Asset Management.

This ‘must attend’ event for Oracle users offers a fantastic opportunity to network with other Oracle users and experts, and to learn and share experiences.

If you are interested in registering for the Scotland OUG on 13th June 2012, please go to the OUG registration page.

We look forward to seeing you on the day.

Rocela values its values!

From before Rocela was born (circa 2001), fundamental values have been key to its evolution. In fact, the real trigger for Rocela was the jarring of cultures between Oracle and its largest clients and the tension that this created – a tension that Rocela would go on to soothe.

Although not realizing it at the time Rocela’s founders (Kenny Wilson and Martin Mutch) shared core personal values and attached significance to them in the boundary between personal and business lives. It is therefore no surprise that Rocela has always had a strong moral and cultural identity, and its core values have always been evident through behaviours, even when they were not specifically a focal point for development.

Over the past few years as we have grown, we have realised that scaling ‘appropriate’ behaviours and the Company culture would benefit from clarity of our values. After a full company workshop on values early 2011, we encouraged a staff workgroup to explore and define those values that our staff felt to be true of us, valued by us and important to mature and live by.

This workgroup proposed a set of core values that was fully recognised by founders and senior managers and was approved without iteration – a full description of what these values mean can be downloaded from here. Our values are:

• Customer Focus
• Expertise
• Integrity
• Professionalism
• Passion

Since then, core values have been promoted visibly, and top down are used increasingly as a guide and input to any daily decision including hiring, customer situations, investment and withdrawal, and appraisals through our performance management methodology.

So now what? It’s all very well having the values on mugs and posters – how do we actually make them come to life? A question tackled by our CEO Martin Mutch in December last year who formed the ‘next generation’ values workgroup – a group of colleagues whose task it was to devise and propose a programme for ‘Employee Values Recognition’ for our Company meeting in February 2012.

This workgroup approached all staff to ask for stories that would exemplify the company values – not so much ‘awards’ but recognition of staff ‘living the values’. The response was tremendous – over 150 separate recognition stories from all around the business.

And so began the challenging task of narrowing this considerable list down to a manageable and representative record of individuals covering all 5 values. The entire exercise was no mean feat – the values workgroup worked a miracle in getting everything in place for the Company meeting and the individuals recognised were truly humbled as a result.

We will continue to focus on our values throughout 2012 – in the way that we work, make decisions and recognise the exemplary efforts of our co-workers.

Desktop Integration Framework – not just a fairy tale

by Kenny Miller, Principal Consultant for Rocela

Long, long ago in a place far away, a Rocela consultant blogged about the Desktop Integration Framework (DIF). The blog read like a fairy tale – it described a mythical new tool from Oracle but failed to provide any evidence to prove it had ever been seen in the real world.

I was that consultant. As promised, I’ve returned to demonstrate that DIF is not a fairy tale. It may even be worthy of all the hype!

What is DIF?

Applications Desktop Integration (ADI) is Oracle’s standard tool for connecting Oracle EBS with Microsoft Office tools e.g. HR letter generation using Word, and uploading GL journals using Excel. The problem with ADI had always been that only Oracle could decide what it was used it for. There was no supported way to create your own ADI document for something that Oracle hadn’t already provided.

DIF solves this problem. It’s available from R12.1.2 onwards, and provides a supported method of creating custom ADI documents, allowing Excel data to be properly validated and uploaded through any interface or API into Oracle EBS.

Why should we get excited by DIF?

No matter how hard we try, we just can’t keep our Oracle users away from their favourite Microsoft tools. Can anyone imagine a world without Excel?

We’ve all had to build solutions to get data out of Excel for loading into Oracle EBS. The usual approach is to save the data as a CSV file, transfer it to the Oracle server, use SQL*Loader or External Tables to load into a staging table for validation, then call an API or interface to create the data in Oracle. It’s always complicated. It always has too many things to go wrong. Users never really understand how it’s all supposed to work.

DIF allows us to develop our own ADI documents. We can provide our users with the means of creating or updating data in Oracle EBS, directly from within Excel. These ADI documents fully comply with the EBS security model, and real-time list-of-values can be provided to further improve data quality. All validation failures are reported immediately in the document, allowing for correction and re-loading. There are no files to transfer, no missing records caused by loading errors etc.

What do you need to use DIF?

DIF is only available for R12.1.2 and R12.1.3. To use DIF, all you need is for the Desktop Integration Manager responsibility to be added to your user. There are no special roles or grants required.

To get you started, I’d recommend the following material:

  • Oracle note 807319.1 which lists all the Transfer of Information (TOI) content for R12.1. Search the note for Implement and Use Oracle E-Business Suite Desktop Integration Framework and you’ll find some informative eSeminars.
  • The Oracle E-Business Suite Desktop Integration Framework Developer’s Guide. R12.1.3 is available here. R12.1.2 is only available in note 979354.1. There are minor differences between DIF in R12.1.2 and R12.1.3 so I’d recommend you use the relevant version.

Enough chit-chat, let’s see how it works!

I’ve created an example to demonstrate that DIF doesn’t have to be difficult. As you’ll see from the Developer’s Guide, there’s plenty more than DIF can do, but I just wanted to show you how quickly something useful can be developed.

1)      Program Code

CREATE or REPLACE PACKAGE BODY xx_webadi_dif_pkg AS

  -------------------------------------------------------------------------
  -- FUNCTION create_value_set_value (Public)                            --
  -------------------------------------------------------------------------
    -- A simple function to create a value in an independent value set.  --
    -----------------------------------------------------------------------

  FUNCTION create_value_set_value(p_value varchar2,
                                  p_description varchar2)
    RETURN varchar2 IS

    -- Variable Declarations.

    x_storage_value   varchar2(240);

  BEGIN

    -- Call the API. There are no status or error parameters,
    -- the API throws an error if required.

    fnd_flex_val_api.create_independent_vset_value
     (p_flex_value_set_name => 'XX_WEBADI_DIF_Test',
      p_flex_value          => p_value,
      p_description         => p_description,
      x_storage_value       => x_storage_value);

    -- No need to commit because ADI will commit if all rows
    -- processed successfully. Just need to return null
    -- because if we get to here then there have been no
    -- errors.

    RETURN null;

  EXCEPTION WHEN others THEN

    -- Return the error thrown by the API.

    RETURN sqlerrm;

  END create_value_set_value;

END xx_webadi_dif_pkg;

PL/SQL packaged procedures and functions can be used by DIF, but they must only have parameters of simple datatypes i.e. varchar2, number or date. Many standard API’s use complex parameters, and it’s not unusual to have to call multiple API’s to get the job done; therefore I’m of the opinion that a custom wrapper will almost always be needed.

There are various approaches to error handling but, because I’ve decided to always write a wrapper, I can also standardise the way I handle errors. For me, it just seems logical to use a function and return any error messages from the function. This is the approach I’ve taken in the example.

2)      Integrator

“An integrator is a set of metadata that encapsulates all the information needed to integrate a particular Oracle E-Business Suite task with a desktop application.”

Select Create Integrator from the Desktop Integration Manager responsibility. Enter the details below, and select the Next button to move to Step 2.


3)      Interface

“An interface is a set of metadata that determines how the integrator uploads data from a desktop document to Oracle E-Business Suite.”

Assuming you’ve created the XX_WEDADI_DIF_PKG package, then enter the details below, and select the Apply button.

This automatically creates the interface, including an attribute for each of the function parameters. The attributes can be updated to make them required, change the prompts, assign default values, create validations and list-of-values etc. This example doesn’t require any updates to attributes, so the integrator can now be saved by selecting the Submit button. Steps 3 to 5 are not required for this example, but it’s worth making time to understand them.

4)      Layout

“A layout is a set of metadata that determines what fields appear in the desktop document and how those fields are displayed and formatted.”

Select Manage Integrators from the Desktop Integration Manager responsibility. Select the Define Layout button and select the newly created Integrator from the drop-list, then select the Go button.

You can experiment with the Placement and Default Values later. For the moment, we just need to place both fields on the Line, and then select the Next button.

You can now control field positions, widths etc. Again, you can experiment later, but for the moment set the values as shown, then select the Apply button.

That’s all we need to do. Now we’re ready to test it!

5)      Testing

If you have problems using ADI in Excel, then Oracle document 452452.1 will help you trouble-shoot.

Select Manage Integrators from the Desktop Integration Manager responsibility. Then search for the integrator, select the radio-button, and select the Preview button.

Select your appropriate version of Excel, and then move through the various options until an Excel worksheet opens

Data is uploaded by selecting Add-ins-> Oracle -> Upload. The following example shows what happens if I attempt to upload the same value twice. The first record is accepted, but the second record is rejected as a duplicate. I didn’t explicitly commit within my packaged function, therefore ADI performed a rollback because of the error, meaning the first record was not committed.

After correction, I’m able to successfully upload my data.

WebADI issues a commit only when all records have are processed successfully. The values have now been added to my Value Set.

How is DIF deployed?

1)      Form Function

Now we can create a Form Function to deploy our Integrator to our users! Use the following SQL to determine the values needed for the parameters:

SELECT integrator_code
FROM bne_integrators_vl
WHERE user_name = 'XX Value Set Test';
--XX_VALUE_SET_TEST_XINTG

SELECT layout_code
FROM bne_layouts_vl
WHERE integrator_code = 'XX_VALUE_SET_TEST_XINTG';
--VALUESETTEST

SELECT content_code
FROM bne_contents_vl
WHERE integrator_code = 'XX_VALUE_SET_TEST_XINTG';
--XX_VALUE_SET_TEST_CNT1

Create the Form Function as follows:

2)      FNDLOAD

FNDLOAD can be used to move the Integrator, and Layout, from one environment to another. Check that patch 10385955 has been applied first – if it hasn’t, your Integrator will be created with a source of Oracle, not Custom, meaning you won’t be able to update it!

To download:

FNDLOAD apps/&pwd 0 Y DOWNLOAD /
$BNE_TOP/patch/115/import/bneintegrator.lct /
XX_VALUE_SET_TEST_XINTG.ldt BNE_INTEGRATORS /
INTEGRATOR_ASN=FND INTEGRATOR_CODE=XX_VALUE_SET_TEST_XINTG

To upload:

FNDLOAD apps/&pwd 0 Y UPLOAD /
$BNE_TOP/patch/115/import/bneintegrator.lct /
XX_VALUE_SET_TEST_XINTG.ldt

Summary

There’s a lot more to DIF than I’ve covered in this example, but I hope I’ve demonstrated how quickly something useful can be developed. It’s not difficult to expand this example to build complex solutions. I’ve already used DIF for an inventory item migration – templates were applied to create new items, which were then assigned to different organizations. I borrowed most of the program code from previous projects, but it only took a couple of hours to pull everything together and have a working ADI document upload.

This is the power of DIF – it doesn’t just provide genuinely useful new functionality, but it also provides a framework to quickly develop and deploy this new functionality.

And they lived happily ever after…..


Virtualisation – The Reality, not the hype. Final Part

By Tam Kyle, Senior License Consultant, Rocela

Before I launch into the thorny topic of Oracle licensing when virtualising, it’s probably worth reminding ourselves of what has been discussed beforehand … briefly!

So, Part I covered what virtualisation is and why companies are so keen to take advantage of it with Part II discussing the sort of problems organisations encounter when virtualising and at a high level, how you can avoid these issues in the future.

And so, to Part III – the impacts and considerations of Oracle licensing when virtualising. Where to start?

Cost saving or cost avoidance?
Let’s start with the obvious – money. What are you trying to achieve? Direct cost saving or cost avoidance? Do you actually know if it’s possible to reduce or avoid Oracle costs? If you have a fixed maintenance stream, then you are paying for what you have already bought irrespective of the actual amount of usage. Your support fees will not necessarily reduce in line with reduced usage – all you will have done is freed up licenses for use elsewhere in the business, all the while paying support for shelfware – but that might be beneficial to you as opposed to dropping the bottom line.

Your license contracts will determine whether and indeed how you can terminate licenses and it’s certainly not as easy as saying, “I’ve virtualised, therefore my footprint is smaller, so I’ll pay less.”

Smaller footprint
And whilst we are on that topic, are you sure that your footprint is smaller? In other words, have you considered whether your virtualisation technologies allow licensing in a sub-capacity context? In plain English, have you been able to establish whether you only need to license the bit of the box that you are using? As it turns out, this is not necessarily always the case. My fuller publication will walk you through a few scenarios with some surprising conclusions.

Server Clustering
One of the great benefits of some virtualisation technologies is the capability to join physical servers together (clustering). This allows for resilience and the seamless moving of virtual machines between hosts within the cluster. However the license terms underpinning this may prove prohibitive – for example, Oracle’s current stance on VMware is that you have to license all the boxes in the cluster because you are giving the VM’s the capability of roving. Many would argue that the VM is never in two places at once or that this virtualisation technology is ‘hard’ because it’s technically the same as Oracle’s, so why should they consider it ‘soft’ and force the entire cluster to be covered?

Migration
Have you considered that you may need to license your installation twice whilst you have parallel running during a migration to a virtualised infrastructure? Whilst this will most likely be a new and additional spend, it may not need to be licensed in the same way as your original setup.

Who said licensing was easy? In truth, there are many nuances around the various virtualisation/isolation/partitioning technologies in use – the breadth and licensing impact of these technologies isn’t easily understood and is frequently open to interpretation depending on the operational, business and contractual context.

The 3 Vital Treatments
Drawing this 3 part summary to a close, what we are saying – that virtualisation is an abstraction of hardware from operating systems and software. Organisations consider virtualisation to save money, provide operational flexibility and prepare for future technologies. Many organisations’ virtualisation projects run into trouble when they fall foul to unfixed requirements, underestimating the technical challenge, vendor support and lock-in and unintended licensing implications.

So, our 3 Vital Treatments, to keep in mind when embarking upon virtualisation projects are:
1. Get the requirements right – what is the purpose of the project? Have you consulted experts to see if you can save money and is it the optimal way to save money?
2. A tight business case – consider all elements. Understand the potential benefits and pitfalls of your virtualisation choices especially in license terms – how do you license your new virtualisation setup and how is it different from your existing license provision?
3. Control – understand migration needs and ensure you can operate your virtualisation setup ongoing, especially from a license perspective.

The full Virtualisation Publication will offer you much more detail and insight into this paradigm and is available to download from our website.

This concludes our series on Virtualisation – if you have any questions then please do not hesitate to email me on tam.kyle@rocela.com

Oracle Unlimited License Agreements – considerations for prospective buyers

By Paul Bullen, Senior License Consultant

In the vast and complicated world of Oracle licensing, you may have heard about Oracle Unlimited License Agreements (commonly known as ULAs). Not many people fully understand how these license agreements work and often we see businesses using ULAs who do not know how to get the most from them, or who have fundamental misunderstandings about their licensing.

This is the first in a series of blog posts based on Oracle ULA’s. Over the next few weeks, we will describe what a ULA is and how to manage and declare one successfully. It should be noted that ULAs and Oracle licensing in general are very complicated and expert advice should be sought if you are considering, managing or declaring a ULA.

So, what is a ULA?

A ULA allows you to use an unlimited amount of a defined set of products, for a specific period. At the end of the specified period, you declare your amount of usage which becomes your perpetual license – you end up with exactly the same type of license as you would if you had purchased ‘normal’ perpetual licenses.

So, you pay your license fee upfront (your support cost is always based on this license fee), you use as much of those products as you like, declare your usage and then own that number of licenses. This type of licensing is different from Enterprise License Agreements and typically Oracle ULAs only apply to Oracle technology products (not applications).

Let’s re-iterate some important points here:
1) You pay the license fee up-front, there is no ‘true up’, ever. Your annual support and maintenance fee is based on this license fee
2) You may use as much of the defined products as you like, without limit (you do occasionally see ‘capped’ ULAs but these are less common than truly unlimited ULAs)
3) You declare your usage and own that number of perpetual licenses
4) Your annual support and maintenance fees are based on the original license fee
5) There is no true-up (have I said that enough?)

Sounds good, doesn’t it? However, there are a few things to consider if you are thinking about choosing an Oracle ULA. Let’s take a look at a couple of the above key points in more detail:

The license fee: if you ask Oracle to provide you a quote for a ULA, expect them to take into account everything they know about your roadmap and planned usage of Oracle. Additionally, remember that you are going to be paying for the luxury of deploying as much software as you like, and this will attract a premium.

Inevitably, ULAs are almost always multi-million pound/dollar affairs – don’t expect to get one for £50k. You need to consider how much you are expecting to spend over the term: this can be a significant challenge considering the term is typically three years. Building a business case to justify spending £5m now rather than a total of £8m piecemeal over three years takes some foresight. You may know you have significant project plans in the pipeline, or your estate may be woefully out of date and ready for a wholesale capacity boost or technology refresh. More on this in a later blog post

Support fee: this is an interesting and key part of ULAs. It’s important to realise that any existing support for the products included in the ULA will be added to your new ULA support fee. Support and maintenance is, as ever, linked to the initial ULA license fee and the first year is paid up front. The license fee is a one-off capital payment. Support and maintenance, like normal perpetual licenses, is opex paid annually and typically subject to retail price index (RPI). So if your current Oracle Database Enterprise Edition support and maintenance cost is £200k per year, and your ULA (just for DB EE) costs £4m (support at 22%, giving £880k per year), your total new annual support will be £1.08m. This leads us nicely into…

What happens to my old licenses? Any licenses for products on the ULA will be ‘converted and replaced’- i.e. you have no rights to use these after your ULA starts. Not a problem: you have a ULA!

Use as much as you like: Really? —you can use as much of the products on the list as you like. Most ULAs are for a number of products: getting this requirement sorted at the time of negotiation is very important. Plus, you need to be aware that new products may be introduced during the course of the ULA which you would not be entitled to use under this agreement.

You need to think about your Oracle strategy: will your upgrade to and management of 11gR2 benefit in the long term with some of those shiny extra cost options or management packs? Does your Oracle strategy involve newer Oracle products?

The really tricky part is making sure that everyone who downloads, installs and uses Oracle software across the business only uses software that is part of the defined list of products. Whilst using the software, it is vital you track its deployment. We’ll come back to this in another post—it is a critical part of owning a ULA.

Next time, we’ll look at an example ULA, explain it further and we’ll review other considerations. In the meantime, please feel free to ask any questions below!

There is more information on our website too!

Follow

Get every new post delivered to your Inbox.