Monday, December 31, 2012

2013 is the FOCUS year

Happy new year my followers/readers :)

Last year since I joined Oracle, I was busy and I didn't blog as I used to do. This year I will try to post gradually however my focus will change a little to be more focused on new FMW products features, business value and how to sell & market for solutions based on those products.

One more thing, I have created an open facebook group that I'd like to invite you to join https://www.facebook.com/groups/MEWFMW/ the group purpose is sharing and I created it on facebook because I found most of Oracle FMW experts in Middle East & Africa (if you are not from this region still you can join us it will be helpful) are accessing Facebook daily :) 

One last thing, I want to give you an advice for this year that I gave to myself: Manage Your Focus Manage Your Focus Manage Your Focus

Sunday, June 17, 2012

Sales Lessons

I want to share with you all some sales lessons, that I have learnt recently from Eamonn Ward and Declan Tyrrell.

What I learnt?
1- Ask don't tell (Quantify impacts and root cause)
2- It's not about me, it's about the customer (think in that while preparing for presentation or meeting)
3- Get others input (Really I didn't see the Gorilla)
http://www.youtube.com/watch?v=vJG698U2Mvo
4- Determine high ending objective

What's the gain?
1- Credability
2- Trust
3- Quality

Ho do I get that?
1- Practice
2- Observe
3- Share

I wish it will be helpful to you too, and don't forget that you missed the gorilla

Friday, May 18, 2012

Newly Hired @ Oracle Egypt

Sorry for not posting from long time that was because I closed my last project, took a vacation, and at last joined Oracle Egypt from couple of days.


I am hired as Senior Sales Consultant for Webcenter Content, and I will try to dedicate more time for posting this year as I became part of Oracle family.

Wednesday, February 29, 2012

Presenting Like The Artist


Presenting Like The Artist
View more presentations from Emiland

Don't forget to tell your own store and use "One more thing".


Sunday, February 26, 2012

WebRTC on Chrome Canary and a look on Media Capture

I have been for a while exploring around the area of capturing using HTML5 and the results were interesting for me.

 WebRTC specification is to allow web browsers to stream media through set of APIs. It is still under development, fortunately we can take a look on it on chrome canary (chrome for developers)



Visit this link to test media streaming on chrome, especially try this one http://neave.com/webcam/html5/ for Paul Neave.

Another interesting specification for me was Media Capture which focused on integration of media capture in HTML forms based on an extension to the FileAPI.

Imagine if you want to capture an image or video from your webcam, you need only to write

<input type="file" accept="image/*" capture="camera" id="capture"/>

and I wish to capture from a scanner in the same way too, so that we don't need to write complex code to capture and care about browser compatibility or jvm memory.


Of course all of this is not yet released and it will be added values to us as web and content experts.

Monday, February 20, 2012

Customize Navigation Menu's Permissions to be Role Based

I think most of us knows how to Customize Oracle UCM 11g navigation menus, and if not take a look at other blog posts like this one from Kyle's blog: Modifying Navigation Menus in UCM 11g



But what if you want the navigation menus to be based on Custom security roles that you have created, unfortunately it is not available out of the box. In the following lines, I will explain how to do that:

- When created your menus, you have overridden a resource include called CoreMenuItemsFlags
For example:

<@dynamicdata CoreMenuItemsFlags@>
id, flags
FUNCTIONA, isAdmin
<@end@>

- Instead of using predefined permissions based on fixed roles like isAdmin, isLoggedIn, or isSysManager, we need to use permissions based on our custom roles also we need to write code once (I mean we will not change our custom code for every new role created).

- My approach is: if we have a new custom role called HR, then we will use a permission for the navigation menu called isUserInSpecificRoleBillingAuditorHR, so the resource include will be


<@dynamicdata CoreMenuItemsFlags@>
id, flags
FUNCTIONA, isUserInSpecificRoleBillingAuditorHR
<@end@>

- Now the real story comes
We will customize a resource include called navigation_filter_rset_menu_item where we will add an extra check for our prefix isUserInSpecificRoleBillingAuditor, and according to the Role added to the prefix we grant users access to the menu item


<$elseif flags like "*isUserInSpecificRole*"$>
<$if strIndexOf(flags, ':') == -1$>
<$userInRole = strSubstring(flags,20,strLength(flags))$>
<$else$>
<$part1 = strSubstring(flags,strIndexOf(flags,'isUserInSpecificRole')+20,strLength(flags))$>
<$if strIndexOf(part1, ':') == -1$>
<$userInRole = part1$>
<$else$>
<$userInRole = strSubstring(part1,0,strIndexOf(part1, ':'))$>
<$endif$>
<$endif$>
<$if not userHasRole(userInRole)$>
<$tmpDeleteRow = 1$>
<$endif$>

Note the extra check should be added after isContributor check

<$if flags like "*isContributor*"$>

Or you can read the resource include code and customize it as you want


Oracle Enterprise Manager: Unhandled exception during generation of chart Host CPU

I have some issues with Oracle Enterprise Manager for RAC 11gR2, I searched for help everywhere including Oracle Support without luck. I even asked a DB expert but he didn't solve it too.

The following is a link that I would like to advise anyone has problems with Database Enterprise Manager to take a look at

http://divakarmehta.wordpress.com/2011/12/22/steps-to-configure-11g-grid-control_db-console-for-11gr2-grid-infrastructure-rac-cluster/

By the way, he error I faced is performance dashboards are not displayed and a java exception was there saying "Unhandled exception during generation of chart Host CPU"

Wednesday, January 4, 2012

. Oracle ranks as Leader in all content technology segments

Forrester Wave ranks Oracle as Leader in all content technology segments in their 2011 Q4 report.

However Forrester said "Oracle’s main weaknesses lie in its archiving and compound document publishing capabilities".



I think all of us agreed with that, where
  • Oracle Document Capture needs a lot of improvements (for example index forms design, and localization).
  • I am wondering why they offer IPM, we can do the same thing with UCM interface. 
  • Also Ad-Hoc scanning (scanning from Checkin page) is a big requirement that all customers I worked with are asking for.

Tuesday, January 3, 2012

2011 has finally gone and 2012 came

Happy New Year. There is no technical stuff here, I am just writing some thoughts.



2011 was tough year for me, and I hope to 2012 to be better.

In 2011 we had revolutions in Middle East, bad economic, and bad competitions between companies. I have realized a lot of things in 2011, to win business you need to play politics all the day. Corruption in Middle East is big and annoying and bothering me it is everywhere, and of course I am against it.

The new things I learnt and realized in 2011 makes me think differently now, and I discovered the biggest mistake I have done in my life which is making work and business my first priority which is like a cancer idea spreading in mind.

My advice to everyone, you must think about yourself, don't neglect it, and leave the queue make yours.

Corruption is corruption, please don't decorate it and don't give other names.

Invest in your happiness.

Displaying metadata field as checkbox

I think most of us knows how to Customize Oracle UCM 11g menus, and if not take a look at other blog posts like form this one from Kyle's blog: Modifying Navigation Menus in UCM 11g

But what if you want the menus to be based on Custom security roles that you have created, unfortunately it is not available out of the box. In the following lines, I will explain how to do that:

- When created your menus, you have overridden a resource include called CoreMenuItemsFlags
For example:


<@dynamicdata CoreMenuItemsFlags@>
id, flags
FUNCTIONA, isAdmin
<@end@>

- Instead of using predefined permissions based on fixed roles like isAdmin, isLoggedIn, or isSysManager, we need to use permissions based on our custom roles also we need to write code once (I mean we will not change our custom code for every new role created).

- My approach is: if we have a new custom role called HR, then we will use a permission for the menu called isUserInSpecificRoleBillingAuditorHR, so the resource include will be


<@dynamicdata CoreMenuItemsFlags@>
id, flags
FUNCTIONA, isUserInSpecificRoleBillingAuditorHR
<@end@>

- Now the real story comes
We will customize a resource include called navigation_filter_rset_menu_item where we will add an extra check for our prefix isUserInSpecificRoleBillingAuditor, and according to the Role added to the prefix we grant users access to the menu item


<$elseif flags like "*isUserInSpecificRole*"$>
<$if strIndexOf(flags, ':') == -1$>
<$userInRole = strSubstring(flags,20,strLength(flags))$>
<$else$>
<$part1 = strSubstring(flags,strIndexOf(flags,'isUserInSpecificRole')+20,strLength(flags))$>
<$if strIndexOf(part1, ':') == -1$>
<$userInRole = part1$>
<$else$>
<$userInRole = strSubstring(part1,0,strIndexOf(part1, ':'))$>
<$endif$>
<$endif$>
<$if not userHasRole(userInRole)$>
<$tmpDeleteRow = 1$>
<$endif$>

Note the extra check should be added after isContributor check

<$if flags like "*isContributor*"$>

Or you can read the resource include code and customize it as you want


Increase maximum number of folders and content per folder

Changing maximum content and folders per folder to be more than 1000 gives an error in UCM 11g.

It is not recommended to increase number of folders where user may got out of memory. The limitation comes from Java Runtime Environment. However sometimes you need to increase it a little.

The following steps explain how to increase it from 1000 to 2000.
- Browse to Oracle UCM configurations directory (for example /u01/oracle/ecm1/ucm)
- Then move to folders component configurations directory /cs/data/components/folders
- You will find a file called config.cfg
- Change the following parameters
MaxContent=2000
MaxFolders=2000
- Restart UCM and test