SlideShare uma empresa Scribd logo
1 de 40
Baixar para ler offline
Enhance Oracle SSHR with
Advanced Personalizations and
     OA FWK Extensions
     Ramesh Sannegowda
        02-Mar-2007
        SEOUC 2007
Overview

• Overview
  – Personalizations/Extensions, What’s the
    difference?
  – Where are personalizations/page meta data
    stored
  – Add new items to a page/region
  – Identify available fields via ‘About page’
Overview cont..

• Overview cont…
  – SPEL language for dynamic personalizations
  – Using JDR utilities
  – Custom Look & Feel (CLAF)
  – Extending Business Components
  – Deploying extensions
Personalizations/Extensions

• Difference between personalizations and
  extensions
  – Personalizations
    • Declaratively alter the UI to meet user/business
      need
       – Change Label, Show/Hide fields etc.
  – Extensions
    • Programmatically extend application functionality
       – Add business logic, Add new fields etc.
Personalizations/Extensions

• Difference between personalizations and
  extensions contd..
  – OAF components: Declarative and Programmatic
     • Declarative/UIX (page metadata): XML
     • Programmatic: Java
  – Personalizations
     • Global Personalize link
     • Region/Item level personalize link
  – Extensions
     • JDeveloper with OA FWK extensions available as patch on
       Metalink
Personalizations

• Where are personalizations/page meta data
  stored?
  – Source files
     • $PROD_TOP/mds/selfservice/<function>/webui
  – Seeded personalizations
     • $PROD_TOP/mds/selfservice/<function>/webui/customizations
  – Database MDS repository (user personalizations)
     • JDR_PATH
     • JDR_COMPONENTS
     • JDR_ATTRIBUTES
Personalizations
• Adding new items to page/region
Personalizations
• Adding additional items to page/region
Personalizations
• Adding additional items to page/region




                  OA.jsp?akRegionCode=
                  HR_PROCESS_PEOPLE_TOP_SS
                  &akRegionApplicationId=800
                  &language_code=US
                  &pDestination=HR_ACTIONS_SS&pCalledFrom=
                  &retainAM=Y&addBreadCrumb=Y
                  &pPersonId={!PersonId}
Personalizations
• Adding additional items to page/region
Personalizations
• Identify available fields via ‘About Page’
Personalizations
• Identifying available fields via About page
Personalizations
• Identifying available fields via About page
Personalizations
• Identifying available fields via About page
Personalizations
• Add new Region
Personalizations
• Add new Region
Personalizations

• Dynamic personalizations
  – SPEL language
    • Simplest Possible Expression Language
    • Used to set (true/false, yes/no)
       –   Read Only
       –   Rendered
       –   Required
       –   Disabled
    • ${oa.<viewObject>.<viewAttr>},
      ${oa.function.<functionName>},
      ${oa.FunctionSecurity.<FunctionName>}
Personalizations

• Dynamic personalizations (example)
  – Step 1: Create a function with a name that describes the rule
    you want to implement. For example, assume you have a text
    field whose Read Only property should be True if the user DOES
    NOT have access to the MANAGER_READ_ONLY function when
    logged in using the MANAGER responsibility.
  – Step 2: Create a grant for this function. In this example, we
    would create a function grant for MANAGER_READ_ONLY in the
    context of the responsibility MANAGER.
  – Step 3: Set the Read Only property using the following SPEL
    syntax:${oa.FunctionSecurity.<FunctionName>}
Personalizations

• Dynamic personalizations (example contd..)
  – The test will return False if <FunctionName> is
    granted to the current user/responsibility, otherwise
    True.
  – In this example, we would set the Read Only property
    to: ${oa.FunctionSecurity.MANAGER_READ_ONLY}
  – If the user is logged in to the MANAGER responsibility
    and has been granted access to this function, the OA
    Framework returns False in the function security test.
    When the Read Only property is set to False, the item
    is updateable.
Personalizations
• SPEL binding
Maintain Personalizations

• Maintain personalizations using JDR utilities
  –   jdr_utils.listcustomizations
  –   jdr_utils.printdocument
  –   jdr_utils.listcontents
  –   jdr_utils.deletedocument
       • Examples
          – jdr_utils.listcustomizations('/oracle/apps/per/selfservice/commo
            n/server/customizations/site/0/AsgSummaryVO');
          – jdr_utils.printdocument('/oracle/apps/per/selfservice/common/s
            erver/customizations/site/0/AsgSummaryVO');
          – jdr_utils.deletedocument('/oracle/apps/per/selfservice/common
            /server/customizations/site/0/AsgSummaryVO');
          – jdr_utils.listcontents('/oracle/apps/per/selfservice/personalinfor
            mation/webui/customizations/site/0');
Custom Look & Feel (CLAF)

• Components of LAF
  – Style Sheets (XSS)
  – Icons
  – Renderers (.uit)
• Create Custom LAF using
  – Base LAF
  – Simple LAF
  – Another Custom LAF
Custom Look & Feel (CLAF)

• Style Sheets
  – Control Font and Color of HTML components
     • OA_HTML/cabo/styles/<ClafId.xss>
• Icons
  – Control LAF of Web Beans
• Renderers
  – Controls how Web Beans lay out children and
    generate HTML
  – Defined declaratively (.uit extension)
     • OA_HTML/cabo/templates/ClafID/ClafId.uit
Custom Look & Feel (CLAF)
• CLAF User Interface
Custom Look & Feel (CLAF)
• CLAF User Interface
Custom Look & Feel (CLAF)
• CLAF User Interface
Custom Look & Feel (CLAF)
• CLAF User Interface
Custom Look & Feel (CLAF)
• Adding custom renderers
  – Edit $OA_HTML/cabo/lafs/ClafId.xml
    <renderer name="pageLayout">
           <template name="pageLayout.uit">
           </template>
    </renderer>
Custom Look & Feel (CLAF)
Custom Look & Feel (CLAF)
Extensions

• Extend VO to add new columns
  – Used to add new fields to a page using
    personalizations
• Extend VO to smart filter LOVs, Picklists
• Extend EO to add validation
• Avoid extending CO code
Extensions

• Extend EO/VO
  – Review ‘About this Page’ for the page/region that you
    want to add new fields
  – Determine the VO that you will be extending
  – Import the package that contains the VO into your
    JDeveloper project
  – Create new VOEx by extending the seeded VO
  – Add new attribute to the VOEx
  – Substitute seeded VO with VOEx in the JPX file
  – Use JPXIMPORT.bat to import the JPX file to database
Extensions
• Extend EO/VO
Extensions
• Extend EO/VO
Extensions
• Extend EO/VO
Extensions
• Adding validation to enforce business rules
Extensions
• Adding validation to enforce business rules
Extensions
• Adding validation to enforce business rules
Extensions

• Deploying Extensions
  – Do not replace the original object
  – Extend and Substitute
  – Move all the files and directories in your
    custom package to the middle tier
  – Run JpxImport utility to migrate the
    substitutions
  – Bounce Apache
24221030 Enhance Oracle Sshr With Advanced Personalizations And Oa Fwk Extensions

Mais conteúdo relacionado

Mais procurados

JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the Cloud
JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the CloudJavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the Cloud
JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the CloudAaron Walker
 
Developing and Deploying Custom Branding Solutions in SharePoint 2010
Developing and Deploying Custom Branding Solutions in SharePoint 2010Developing and Deploying Custom Branding Solutions in SharePoint 2010
Developing and Deploying Custom Branding Solutions in SharePoint 2010jhendrix88
 
Music Downloading Website (HTML,CSS,PHP Presentation)
Music Downloading Website (HTML,CSS,PHP Presentation)Music Downloading Website (HTML,CSS,PHP Presentation)
Music Downloading Website (HTML,CSS,PHP Presentation)Anil Kumar
 
Architectural changes in SharePoint 2013
Architectural changes in SharePoint 2013Architectural changes in SharePoint 2013
Architectural changes in SharePoint 2013Shai Petel
 
Lesson 5 security
Lesson 5   securityLesson 5   security
Lesson 5 securityRam Kedem
 
[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010Alpesh Nakar
 
[Tech.Ed India 2011] Backup and Restore SharePoint 2010
[Tech.Ed India 2011] Backup and Restore SharePoint 2010[Tech.Ed India 2011] Backup and Restore SharePoint 2010
[Tech.Ed India 2011] Backup and Restore SharePoint 2010Alpesh Nakar
 
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...Kuali Student Project
 
Acquia Drupal Certification
Acquia Drupal CertificationAcquia Drupal Certification
Acquia Drupal CertificationPhilip Norton
 
Implementing Drupalcamp sites
Implementing Drupalcamp sitesImplementing Drupalcamp sites
Implementing Drupalcamp sitesdrupalcampest
 
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in Pune
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in PunePHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in Pune
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in PuneCNC WEB WORLD
 
Using power shell to improve sharepoint management
Using power shell to improve sharepoint managementUsing power shell to improve sharepoint management
Using power shell to improve sharepoint managementMitch Darrow
 
SharePoint 2010 Content Query Web Part
SharePoint 2010 Content Query Web PartSharePoint 2010 Content Query Web Part
SharePoint 2010 Content Query Web PartKim Frehe
 
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your SiteDrupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Sitenyccamp
 
Zend Framework Quick Start Walkthrough
Zend Framework Quick Start WalkthroughZend Framework Quick Start Walkthrough
Zend Framework Quick Start WalkthroughBradley Holt
 

Mais procurados (20)

JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the Cloud
JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the CloudJavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the Cloud
JavaOne 2009 - Full-Text Search: Human Heaven and Database Savior in the Cloud
 
Developing and Deploying Custom Branding Solutions in SharePoint 2010
Developing and Deploying Custom Branding Solutions in SharePoint 2010Developing and Deploying Custom Branding Solutions in SharePoint 2010
Developing and Deploying Custom Branding Solutions in SharePoint 2010
 
Music Downloading Website (HTML,CSS,PHP Presentation)
Music Downloading Website (HTML,CSS,PHP Presentation)Music Downloading Website (HTML,CSS,PHP Presentation)
Music Downloading Website (HTML,CSS,PHP Presentation)
 
Architectural changes in SharePoint 2013
Architectural changes in SharePoint 2013Architectural changes in SharePoint 2013
Architectural changes in SharePoint 2013
 
Lesson 5 security
Lesson 5   securityLesson 5   security
Lesson 5 security
 
Best Practices For Centrally Governing Your Portal And Taxonomy Echo Techno...
Best Practices For Centrally Governing Your Portal And Taxonomy   Echo Techno...Best Practices For Centrally Governing Your Portal And Taxonomy   Echo Techno...
Best Practices For Centrally Governing Your Portal And Taxonomy Echo Techno...
 
[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010[AU SPC 2011] Backup Restore SharePoint 2010
[AU SPC 2011] Backup Restore SharePoint 2010
 
[Tech.Ed India 2011] Backup and Restore SharePoint 2010
[Tech.Ed India 2011] Backup and Restore SharePoint 2010[Tech.Ed India 2011] Backup and Restore SharePoint 2010
[Tech.Ed India 2011] Backup and Restore SharePoint 2010
 
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...
I Did Not Know You Could Do That With An SIS: How To Make Kuali Student Work ...
 
Aem best practices
Aem best practicesAem best practices
Aem best practices
 
Quiery builder
Quiery builderQuiery builder
Quiery builder
 
Acquia Drupal Certification
Acquia Drupal CertificationAcquia Drupal Certification
Acquia Drupal Certification
 
Implementing Drupalcamp sites
Implementing Drupalcamp sitesImplementing Drupalcamp sites
Implementing Drupalcamp sites
 
Intro To Asp
Intro To AspIntro To Asp
Intro To Asp
 
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in Pune
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in PunePHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in Pune
PHP Course in pune , PHP Training in Pimpri chinchwad ,PHP training in Pune
 
Using power shell to improve sharepoint management
Using power shell to improve sharepoint managementUsing power shell to improve sharepoint management
Using power shell to improve sharepoint management
 
SharePoint 2010 Content Query Web Part
SharePoint 2010 Content Query Web PartSharePoint 2010 Content Query Web Part
SharePoint 2010 Content Query Web Part
 
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your SiteDrupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
 
Zend Framework Quick Start Walkthrough
Zend Framework Quick Start WalkthroughZend Framework Quick Start Walkthrough
Zend Framework Quick Start Walkthrough
 
Ron
RonRon
Ron
 

Semelhante a 24221030 Enhance Oracle Sshr With Advanced Personalizations And Oa Fwk Extensions

enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensions
enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensionsenhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensions
enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensionsRajiv reddy
 
Vibe Custom Development
Vibe Custom DevelopmentVibe Custom Development
Vibe Custom DevelopmentGWAVA
 
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADFDont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADFLuc Bors
 
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...Lucidworks
 
Webservices Workshop - september 2014
Webservices Workshop -  september 2014Webservices Workshop -  september 2014
Webservices Workshop - september 2014clairvoyantllc
 
CUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension PointsCUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension PointsAlfresco Software
 
Customization_Oracle_Fusion_Cloud.pptx
Customization_Oracle_Fusion_Cloud.pptxCustomization_Oracle_Fusion_Cloud.pptx
Customization_Oracle_Fusion_Cloud.pptxRajeevKumar720650
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to SolrJayesh Bhoyar
 
Solr Application Development Tutorial
Solr Application Development TutorialSolr Application Development Tutorial
Solr Application Development TutorialErik Hatcher
 
Tech talk live share extras extension modules feb 13
Tech talk live   share extras extension modules feb 13Tech talk live   share extras extension modules feb 13
Tech talk live share extras extension modules feb 13Alfresco Software
 
Magento 2.0: Prepare yourself for a new way of module development
Magento 2.0: Prepare yourself for a new way of module developmentMagento 2.0: Prepare yourself for a new way of module development
Magento 2.0: Prepare yourself for a new way of module developmentIvan Chepurnyi
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoFu Cheng
 
Staying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHPStaying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHPOscar Merida
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellGeoff Varosky
 
Training in Android with Maven
Training in Android with MavenTraining in Android with Maven
Training in Android with MavenArcadian Learning
 
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces ApplicationsCastle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces ApplicationsLucas Jellema
 
June 10th: The SugarCRM Platform
June 10th: The SugarCRM PlatformJune 10th: The SugarCRM Platform
June 10th: The SugarCRM PlatformMatthew Cooke
 
June 10th: The SugarCRM Platform
June 10th: The SugarCRM PlatformJune 10th: The SugarCRM Platform
June 10th: The SugarCRM Platformticomixcrm
 

Semelhante a 24221030 Enhance Oracle Sshr With Advanced Personalizations And Oa Fwk Extensions (20)

enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensions
enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensionsenhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensions
enhance-oracle-sshr-with-advanced-personalizations-and-oa-fwk-extensions
 
Vibe Custom Development
Vibe Custom DevelopmentVibe Custom Development
Vibe Custom Development
 
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADFDont Reinvent the Wheel: Tips and Tricks for reuse in ADF
Dont Reinvent the Wheel: Tips and Tricks for reuse in ADF
 
Don't Reinvent the Wheel - Tips and tricks for rease in Oracle ADF - Luc Bors
Don't Reinvent the Wheel - Tips and tricks for rease in Oracle ADF - Luc BorsDon't Reinvent the Wheel - Tips and tricks for rease in Oracle ADF - Luc Bors
Don't Reinvent the Wheel - Tips and tricks for rease in Oracle ADF - Luc Bors
 
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
Challenges of Simple Documents: When Basic isn't so Basic - Cassandra Targett...
 
Webservices Workshop - september 2014
Webservices Workshop -  september 2014Webservices Workshop -  september 2014
Webservices Workshop - september 2014
 
CUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension PointsCUST-1 Share Document Library Extension Points
CUST-1 Share Document Library Extension Points
 
Customization_Oracle_Fusion_Cloud.pptx
Customization_Oracle_Fusion_Cloud.pptxCustomization_Oracle_Fusion_Cloud.pptx
Customization_Oracle_Fusion_Cloud.pptx
 
Introduction to Solr
Introduction to SolrIntroduction to Solr
Introduction to Solr
 
Solr Application Development Tutorial
Solr Application Development TutorialSolr Application Development Tutorial
Solr Application Development Tutorial
 
Tech talk live share extras extension modules feb 13
Tech talk live   share extras extension modules feb 13Tech talk live   share extras extension modules feb 13
Tech talk live share extras extension modules feb 13
 
Magento 2.0: Prepare yourself for a new way of module development
Magento 2.0: Prepare yourself for a new way of module developmentMagento 2.0: Prepare yourself for a new way of module development
Magento 2.0: Prepare yourself for a new way of module development
 
Advanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojoAdvanced guide to develop ajax applications using dojo
Advanced guide to develop ajax applications using dojo
 
Staying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHPStaying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHP
 
Automating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShellAutomating Enterprise Application Deployments with PowerShell
Automating Enterprise Application Deployments with PowerShell
 
Training in Android with Maven
Training in Android with MavenTraining in Android with Maven
Training in Android with Maven
 
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces ApplicationsCastle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
Castle in the Clouds: SaaS-Enabling Oracle ADF Faces Applications
 
SharePoint 2013 - What's New
SharePoint 2013 - What's NewSharePoint 2013 - What's New
SharePoint 2013 - What's New
 
June 10th: The SugarCRM Platform
June 10th: The SugarCRM PlatformJune 10th: The SugarCRM Platform
June 10th: The SugarCRM Platform
 
June 10th: The SugarCRM Platform
June 10th: The SugarCRM PlatformJune 10th: The SugarCRM Platform
June 10th: The SugarCRM Platform
 

Mais de Hossam El-Faxe

Personalizing Oa Framework Pages
Personalizing Oa Framework PagesPersonalizing Oa Framework Pages
Personalizing Oa Framework PagesHossam El-Faxe
 
Oracle Apps Technical Manual
Oracle Apps Technical ManualOracle Apps Technical Manual
Oracle Apps Technical ManualHossam El-Faxe
 
Personalizations Top Ten Rtr
Personalizations Top Ten RtrPersonalizations Top Ten Rtr
Personalizations Top Ten RtrHossam El-Faxe
 
Many Faces Of Bi Publisher In Oracle Ebs
Many Faces Of Bi Publisher In Oracle EbsMany Faces Of Bi Publisher In Oracle Ebs
Many Faces Of Bi Publisher In Oracle EbsHossam El-Faxe
 
Apps 11i10 Forms Personalization
Apps 11i10 Forms PersonalizationApps 11i10 Forms Personalization
Apps 11i10 Forms PersonalizationHossam El-Faxe
 
Applications Developer 11.5.10
Applications Developer 11.5.10Applications Developer 11.5.10
Applications Developer 11.5.10Hossam El-Faxe
 
Tecnical Apps Interview Questions
Tecnical Apps Interview QuestionsTecnical Apps Interview Questions
Tecnical Apps Interview QuestionsHossam El-Faxe
 
You Oracle Technical Interview
You Oracle Technical InterviewYou Oracle Technical Interview
You Oracle Technical InterviewHossam El-Faxe
 

Mais de Hossam El-Faxe (12)

37727897 Oaf Basics
37727897 Oaf Basics37727897 Oaf Basics
37727897 Oaf Basics
 
36761374 Oaf
36761374 Oaf36761374 Oaf
36761374 Oaf
 
Personalizing Oa Framework Pages
Personalizing Oa Framework PagesPersonalizing Oa Framework Pages
Personalizing Oa Framework Pages
 
Oracle Apps Technical Manual
Oracle Apps Technical ManualOracle Apps Technical Manual
Oracle Apps Technical Manual
 
Personalizations Top Ten Rtr
Personalizations Top Ten RtrPersonalizations Top Ten Rtr
Personalizations Top Ten Rtr
 
Many Faces Of Bi Publisher In Oracle Ebs
Many Faces Of Bi Publisher In Oracle EbsMany Faces Of Bi Publisher In Oracle Ebs
Many Faces Of Bi Publisher In Oracle Ebs
 
Glinterface
GlinterfaceGlinterface
Glinterface
 
Email Using Plsql
Email Using PlsqlEmail Using Plsql
Email Using Plsql
 
Apps 11i10 Forms Personalization
Apps 11i10 Forms PersonalizationApps 11i10 Forms Personalization
Apps 11i10 Forms Personalization
 
Applications Developer 11.5.10
Applications Developer 11.5.10Applications Developer 11.5.10
Applications Developer 11.5.10
 
Tecnical Apps Interview Questions
Tecnical Apps Interview QuestionsTecnical Apps Interview Questions
Tecnical Apps Interview Questions
 
You Oracle Technical Interview
You Oracle Technical InterviewYou Oracle Technical Interview
You Oracle Technical Interview
 

24221030 Enhance Oracle Sshr With Advanced Personalizations And Oa Fwk Extensions

  • 1. Enhance Oracle SSHR with Advanced Personalizations and OA FWK Extensions Ramesh Sannegowda 02-Mar-2007 SEOUC 2007
  • 2. Overview • Overview – Personalizations/Extensions, What’s the difference? – Where are personalizations/page meta data stored – Add new items to a page/region – Identify available fields via ‘About page’
  • 3. Overview cont.. • Overview cont… – SPEL language for dynamic personalizations – Using JDR utilities – Custom Look & Feel (CLAF) – Extending Business Components – Deploying extensions
  • 4. Personalizations/Extensions • Difference between personalizations and extensions – Personalizations • Declaratively alter the UI to meet user/business need – Change Label, Show/Hide fields etc. – Extensions • Programmatically extend application functionality – Add business logic, Add new fields etc.
  • 5. Personalizations/Extensions • Difference between personalizations and extensions contd.. – OAF components: Declarative and Programmatic • Declarative/UIX (page metadata): XML • Programmatic: Java – Personalizations • Global Personalize link • Region/Item level personalize link – Extensions • JDeveloper with OA FWK extensions available as patch on Metalink
  • 6. Personalizations • Where are personalizations/page meta data stored? – Source files • $PROD_TOP/mds/selfservice/<function>/webui – Seeded personalizations • $PROD_TOP/mds/selfservice/<function>/webui/customizations – Database MDS repository (user personalizations) • JDR_PATH • JDR_COMPONENTS • JDR_ATTRIBUTES
  • 7. Personalizations • Adding new items to page/region
  • 9. Personalizations • Adding additional items to page/region OA.jsp?akRegionCode= HR_PROCESS_PEOPLE_TOP_SS &akRegionApplicationId=800 &language_code=US &pDestination=HR_ACTIONS_SS&pCalledFrom= &retainAM=Y&addBreadCrumb=Y &pPersonId={!PersonId}
  • 11. Personalizations • Identify available fields via ‘About Page’
  • 17. Personalizations • Dynamic personalizations – SPEL language • Simplest Possible Expression Language • Used to set (true/false, yes/no) – Read Only – Rendered – Required – Disabled • ${oa.<viewObject>.<viewAttr>}, ${oa.function.<functionName>}, ${oa.FunctionSecurity.<FunctionName>}
  • 18. Personalizations • Dynamic personalizations (example) – Step 1: Create a function with a name that describes the rule you want to implement. For example, assume you have a text field whose Read Only property should be True if the user DOES NOT have access to the MANAGER_READ_ONLY function when logged in using the MANAGER responsibility. – Step 2: Create a grant for this function. In this example, we would create a function grant for MANAGER_READ_ONLY in the context of the responsibility MANAGER. – Step 3: Set the Read Only property using the following SPEL syntax:${oa.FunctionSecurity.<FunctionName>}
  • 19. Personalizations • Dynamic personalizations (example contd..) – The test will return False if <FunctionName> is granted to the current user/responsibility, otherwise True. – In this example, we would set the Read Only property to: ${oa.FunctionSecurity.MANAGER_READ_ONLY} – If the user is logged in to the MANAGER responsibility and has been granted access to this function, the OA Framework returns False in the function security test. When the Read Only property is set to False, the item is updateable.
  • 21. Maintain Personalizations • Maintain personalizations using JDR utilities – jdr_utils.listcustomizations – jdr_utils.printdocument – jdr_utils.listcontents – jdr_utils.deletedocument • Examples – jdr_utils.listcustomizations('/oracle/apps/per/selfservice/commo n/server/customizations/site/0/AsgSummaryVO'); – jdr_utils.printdocument('/oracle/apps/per/selfservice/common/s erver/customizations/site/0/AsgSummaryVO'); – jdr_utils.deletedocument('/oracle/apps/per/selfservice/common /server/customizations/site/0/AsgSummaryVO'); – jdr_utils.listcontents('/oracle/apps/per/selfservice/personalinfor mation/webui/customizations/site/0');
  • 22. Custom Look & Feel (CLAF) • Components of LAF – Style Sheets (XSS) – Icons – Renderers (.uit) • Create Custom LAF using – Base LAF – Simple LAF – Another Custom LAF
  • 23. Custom Look & Feel (CLAF) • Style Sheets – Control Font and Color of HTML components • OA_HTML/cabo/styles/<ClafId.xss> • Icons – Control LAF of Web Beans • Renderers – Controls how Web Beans lay out children and generate HTML – Defined declaratively (.uit extension) • OA_HTML/cabo/templates/ClafID/ClafId.uit
  • 24. Custom Look & Feel (CLAF) • CLAF User Interface
  • 25. Custom Look & Feel (CLAF) • CLAF User Interface
  • 26. Custom Look & Feel (CLAF) • CLAF User Interface
  • 27. Custom Look & Feel (CLAF) • CLAF User Interface
  • 28. Custom Look & Feel (CLAF) • Adding custom renderers – Edit $OA_HTML/cabo/lafs/ClafId.xml <renderer name="pageLayout"> <template name="pageLayout.uit"> </template> </renderer>
  • 29. Custom Look & Feel (CLAF)
  • 30. Custom Look & Feel (CLAF)
  • 31. Extensions • Extend VO to add new columns – Used to add new fields to a page using personalizations • Extend VO to smart filter LOVs, Picklists • Extend EO to add validation • Avoid extending CO code
  • 32. Extensions • Extend EO/VO – Review ‘About this Page’ for the page/region that you want to add new fields – Determine the VO that you will be extending – Import the package that contains the VO into your JDeveloper project – Create new VOEx by extending the seeded VO – Add new attribute to the VOEx – Substitute seeded VO with VOEx in the JPX file – Use JPXIMPORT.bat to import the JPX file to database
  • 36. Extensions • Adding validation to enforce business rules
  • 37. Extensions • Adding validation to enforce business rules
  • 38. Extensions • Adding validation to enforce business rules
  • 39. Extensions • Deploying Extensions – Do not replace the original object – Extend and Substitute – Move all the files and directories in your custom package to the middle tier – Run JpxImport utility to migrate the substitutions – Bounce Apache