Sudhakar is an Oracle Tech Architect working primarily on Oracle ADF and Oracle OAF.
Featured

CholaMeetings.com for ADFTraining classes

We have introduced CholaMeetings.com for all our live classes conducted through adf training at https://www.cholanacademy.com/.

While live classes are frequently taken through different tools, now we had switched to Chola Meetings for better control and features.

Continue reading
1459 Hits
0 Comments
Featured

Oracle Self Paced Courses Bundle at $299

Oracle Self Paced Courses Bundle at $299

Based on the popular request from our learners, below is the self paced course bundle offering for you to save money as well as time. It is like learning yesterday, today and tomorrow of Oracle Technologies for an EBS Technical Consultant.

The courses included are OAF + ADF Beginners + Oracle Fusion Tech Cloud and the price is $299

Recent comment in this post
Mayilswamy
Hi, Can you tell me how long I can access this self paced course.
Tuesday, 20 August 2019 13:16
Continue reading
1904 Hits
1 Comment
Featured

10 Years of ADFTraining.com and 3500+ learners

10 Years of ADFTraining.com and 3500+ learners

On our 10th Year of ADFTraining.com, we would like to thank all our supporters and learners to help us sail through all these years. We started this website when US was under peak recession in 2008 to help people to learn new technologies for free.

Continue reading
1342 Hits
0 Comments
Featured

How did we got 45000 users up and running on Oracle ADF application

How did we got 45000 users up and running on Oracle ADF application

In 2016, we went live with a large scale conversion of a College system from .net and oracle forms to Oracle ADF application with dashboard integration to OBIEE in Muscat with Ministry of Manpower, Oman. The major challenge we faced is the performance issues when there were around 6000 concurrent users and the expectation was to handle the 13000 concurrent users. Read more to view how we solved it...

Continue reading
2206 Hits
0 Comments
Featured

Oracle JDeveloper 19.1.0.0.0 is coming

Oracle JDeveloper 19.1.0.0.0 is coming

I am excited to hear the news of new JDeveloper for Oracle ADF...You heard it right !!!..

 

Oracle JDeveloper 19.1.0.0.0 is coming and it has new UI features for ADF which can be Oracle JET integration..

Continue reading
4190 Hits
0 Comments
Featured

Oracle ADF REST API and ADF Security Authorization Issue

Oracle ADF REST API and ADF Security Authorization Issue

In one of our ADF Training batches, we had noticed an issue related to ADF Security not working on the authorization part when enabled on a Oracle ADF REST API.The authentication part was working fine, but the authorization was failing on ADF 12.2.1.2.0

After scratching the head for few hours, the solution has been arrived at...Thanks to Google Search and Andrejus Post.

Continue reading
14340 Hits
0 Comments
Featured

Query a View Object using View Criteria

import oracle.jbo.VariableValueManager;

import oracle.jbo.ViewCriteria;

import oracle.jbo.server.ApplicationModuleImpl;

import oracle.jbo.server.ViewLinkImpl;

import oracle.jbo.server.ViewObjectImpl;

 

public void applyVCforGlobalSearchProjects(String searchCriteria){

    ViewObjectImpl vo;

    vo = this.getProjects();

    ViewCriteria vc = vo.getViewCriteria("HrProjectsVOCriteria");

    vc.resetCriteria();

    VariableValueManager vvm = vc.ensureVariableManager();

    vvm.setVariableValue("p_search_criteria", searchCriteria);

    vo.applyViewCriteria(vc,true);

    vo.executeQuery();

}

 

Continue reading
3741 Hits
0 Comments
Featured

Work around for bugs in Jdeveloper 12.2.1.3.0

Work around for bugs in Jdeveloper 12.2.1.3.0

Below are the bugs which we found while working with JDeveloper 12.2.1.3.0 and their corresponding work arounds

Copyright

© All Rights Reserved

Continue reading
10679 Hits
0 Comments
Featured

Oracle MAF 2.2.1 App Transport Security Issue

Recently I had migrated the MAF app for one of our client to IOS 9.2 using MAF 2.2.1 and found the issue like below.

 

The resource could not be loaded because the App Transport Security policy requires the use of a secure connection

 

Below are the steps to fix the issue

Continue reading
6930 Hits
0 Comments
Featured

Speed up your 12.1.3 Slow Jdeveloper

The main complaint against the JDeveloper is that it is very slow..Yes, of course you can increase the heapsize and use 64 bit jdk to speed up the slow jdeveloper.

 

But still the design view for the page and page fragment is very slow.Sometimes it hangs and creates lot of frustration among the ADF developers.Here is the way you can set the default view as source view for the page and page fragment.

The navigations were slightly confusing in 12.1.3 JDeveloper..Here is the screenshot for the same.

b2ap3_thumbnail_defaulteditor.png

Copyright

© All Rights Reserved

Continue reading
12567 Hits
0 Comments

How to move oracle adf mds personalizations from one instance to another

I had a requirement to move a bunch of personalization from one instance to another in my current project.I did lot of googling as well as raised an SR with oracle to find the best way to move the personalizations from one instance to another..And then I gave up on it for sometime and later while researching on a different topic I found out the best way to move adf saved queries and user personalization.

It is as simple as export from the source instance and import into the destination MDS using the EM Console.Let me show the steps here..

Copyright

© All Rights Reserved

Continue reading
8779 Hits
0 Comments

How to install Oracle Jdeveloper 12C on windows and mac

I got really excited to hear the news that Oracle JDeveloper 12c released finally.I tried to install the 12c jdeveloper to get my hands dirty but couldn’t even install it :(.

 On windows, installer quit abruptly without any error message and on MAC, what the heck happened I don’t even know.Here is the solution to install them successfully on MAC and Windows.

Copyright

© All Rights Reserved

Continue reading
9837 Hits
0 Comments

How to use subversion with jdeveloper for Oracle ADF – Part 2

In the last article, I had taken you through the steps required to source control your Oracle ADF apps with the help of code.adfapps.com repository and subversion.Let me show you how to checkout an existing oracle adf project from the code.adfapps.com subversion repository.

High level steps:

1) Connect to Subversion repository using the credentials

2) Open up the Versioning Navigator in the JDeveloper

3) Open up your repository and go to (Trunk or Branches or Tags)

4) Checkout the appropriate project folder by right click on the folder and say checkout

Below are the steps in detail:

Copyright

© All Rights Reserved

Continue reading
9553 Hits
0 Comments

How to deploy an adf app with the database connection to Oracle cloud

In the last article, we had seen how to deploy Oracle ADF app to the java cloud from jdeveloper.In this article, let us create some objects in model project with the Department and Employees table from oracle XE database to deploy those tables to the database cloud.Once you migrate the required tables from the XE database to Database cloud, we can deploy our ADF app to javacloud.

Here are the high level steps.

1) Develop your ADF app locally connecting to the Oracle XE database

2) Migrate the referred tables to the associated database cloud

3) Modify the Root AM’s datasource to database.

4) Deploy the ADF app to the Java Cloud.

Copyright

© All Rights Reserved

Continue reading
8251 Hits
0 Comments

How to use subversion with jdeveloper for Oracle ADF development Part 1

It is a very rare sight that a project team with more than 2 developers doesn’t have any source control in place while working on an Oracle ADF development project.If you don’t have source control for Oracle ADF development, then your project needs a better project manager and architect :).

I had created a small project to demonstrate source control with Oracle ADF jdeveloper’s native support for subversion(SVN).We will use the code.adfapps.com for our subversion project hosting.

Below are the high level steps..

1) Create a manual connection to subversion repository from Jdeveloper

2) Click on the Application menu and say version application.

3) Select the repository connection and choose whether to version control to trunk,tags or branch(Put it in Trunk for the first time)

4) That’s it.. We are done with source control..No, there are lot of challenges still.We will cover them one by one in the 5 part series.

For now, let us look at the above steps in detail.

Copyright

© All Rights Reserved

Continue reading
11508 Hits
1 Comment

How to deploy an ADF app to Oracle Public Cloud

Oracle public cloud simplifies the process of deploying your application and keep it running without much of a headache specially if you don’t have full fledged IT team to maintain the application.You need to register for Oracle Cloud Java Trial account with the below url.

https://cloud.oracle.com/mycloud/f?p=service:java:0:::::

Once the trial activation is done, you will receive username/password to login to identity console(Probably in your junk email :) )

Let us go over the steps in detail.

Copyright

© All Rights Reserved

Continue reading
5440 Hits
0 Comments

Blob upload issue in Oracle ADF 11.1.2.x

This is a very interesting issue which totally got me stumped as the application was working perfectly fine in 11.1.1.6 and then migrating the app to 11.1.2.3 resulted in the below error while uploading the file to a blob column.

Cannot create an object of 
type:oracle.jbo.domain.BlobDomain from 
type:weblogic.jdbc.wrapper.Blob_oracle_sql_BLOB with 
value:weblogic.jdbc.wrapper.Blob_oracle_sql_BLOB@114

 Solution is as below.

Copyright

© All Rights Reserved

Continue reading
6975 Hits
0 Comments

How to use subversion with jdeveloper for Oracle ADF – Part 3

In the last part of this series, I had explained you about how to checkout an Oracle ADF project from subversion and run the page from JDeveloper.In this part, I will explain you how to make changes to the checkout project and commit changes to the subversion repository using the pending changes tab in JDeveloper.

High Level steps:

1) Make a change to the jsf page

2) Open up the pending changes tab

3) Select the changed files and click on commit button

4) Provide a commit message to commit the changes to repository.

Above steps in detail:

Copyright

© All Rights Reserved

Continue reading
6564 Hits
0 Comments

Set properties for multiple items at once in 11g Jdeveloper

This is the feature you must have been used to if you had used forms developer and I missed this with the previous version of jdeveloper, specially during the OAF development days.But here is the relief in the 11g version of JDeveloper.I noticed this option while opening the jdeveloper 11g version 11.1.2.3 and came as a tip in jdeveloper.

Lets see how we can use this option.

Copyright

© All Rights Reserved

Continue reading
4591 Hits
0 Comments

Variable bundle resolver issue after upgrade from 11.1.1.6 to 11.1.2.3

I had faced an issue with resource bundle variable resolver library after upgrading adf from 11.1.1.6 to 11.1.2.3.

Error:

Caused by: java.lang.ClassNotFoundException: javax.faces.el.VariableResolver
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
at java.lang.ClassLoader.loadClass(ClassLoader.java:305)
at java.lang.ClassLoader.loadClass(ClassLoader.java:246)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
at java.lang.ClassLoader.defineClass1(Native Method)
Continue reading
9448 Hits
0 Comments

How to attach security to adf bc web services – ADF Webservices Part4

Seldom you expose a webservice operation without a security attached to it..Let us see how we can attach the simple username token based authentication to the webservice we had created in our previous posts.

Checkout the code from below repository if you haven’t completed the previous exercises.

https://code.adfapps.com/svn/adfwebservices

adftraining/adftraining

TAG : CUSTOM_METHOD_WEBSERVICE

Copyright

© Creative Commons Attribution Assurance 3.0 License

Continue reading
6460 Hits
0 Comments

How to expose custom AM method as a webservice in Oracle ADF Part 3

Oracle ADF has helped us to develop a webservice with ADF BC pretty fast by using the service interface of the App Module.In the last version of this webservice, we just created an EO,VO and exposed the AM methods as a webservice.What if you need a custom functionality written in a custom method in the AM to be exposed as a webservice? We have an option in the service interface of the AM to expose the custom methods in AM as a webservice method too.

Lets start by creating the custom method in the AM.

Copyright

© Creative Commons Attribution Assurance 3.0 License

Continue reading
10126 Hits
0 Comments

How to add lov validation to oracle ADF BC webservice Part 2

In the last post, I had walked you through the creation of simple ADF webservice which is based on the Departments table in XE database.There was no validation on the create or update method of the webservice in the previous version.There is a lot of chance that the caller of this webservice may send some junk data into your system through the webservice which doesn’t handle the validations properly.I have a lot of experience with my clients on this aspect :).

Also, the caller won’t know the ids in our system and most probably they will send the names(For Ex: Location id will not be known to the callers but they will know the Location Name).Instead of writing code to handle this kind of scenario, you can simply handle it by attaching the lov to the location id attribute.But this is tricky because locationid attribute is bigdecimal but how the caller will send the location name which is a string ??

Let me show the trick :)

Copyright

© Creative Commons Attribution Assurance 3.0 License.

Continue reading
9183 Hits
0 Comments

OAF Self Paced Training

This course is available on the below link now.

 

https://www.adftraining.com/training/self-paced/guruPrograms/3-oa-framework/6-oa-framework-for-beginners

 

Continue reading
5373 Hits
0 Comments
Featured

How to build webservices with Oracle ADF Part 1

b2ap3_thumbnail_2013-03-07_21-52-33.png

Oracle ADF has a cool feature for building SOAP based webservices using ADF Business Components.I will take you through series of blog entries to build a simple webservices with ADF BC, adding validation using lovs, adding security to the web services etc.

I will be using Oracle XE for the database access and will post the workspace at code.adfapps.com website for you to checkout directly from your jdeveloper.

Copyright

© Creative Commons Attribution Assurance 3.0 License.

Continue reading
5872 Hits
0 Comments

How to notify the user of uncommited changes in Oracle ADF page

b2ap3_thumbnail_2013-03-05_21-08-25.png

There is a huge form user has filled up and suddenly by mistake she clicked on another button in the page  which took her to another page.All her changes are gone..This will be a typical scenario which could have been handled in the development stage, if the team knows the best practices around the web page development.Now you know the use case and lets see how we can implement the solution in Oracle ADF.

 

Copyright

© Creative Commons Attribution Assurance 3.0 License.

Continue reading
4594 Hits
0 Comments
Featured

How to enforce package naming standards and object naming standard for ADF Business Components

It is indeed a pain to work in an Oracle ADF project where there are multiple developers and everyone names their objects according to their wish.We had the same kind of issue in my previous Oracle ADF  Development project.This has to be the first priority before even starting the coding.If not, you are in for a big shock when you look at the object names in future :)

Oracle JDeveloper comes with a great feature to tackle this scenario and does a wonderful job.Let us look at the steps to implement the same.

 

Copyright

© Creative Commons Attribution Assurance 3.0 License.

Continue reading
8134 Hits
0 Comments
Featured

How to use History columns in Oracle ADF for mini auditing

b2ap3_thumbnail_image_20130304-162011_1.png

History columns in Oracle ADF is a very convenient builtin functionality which takes out a little bit pain out of the developers to maintain the who columns.It is very simple to implement and have to be done at the Entity Object level.Below are the list of History or WHO columns available in Oracle ADF.

 

Copyright

© Creative Commons Attribution Assurance 3.0 License.

Continue reading
15550 Hits
0 Comments

How to call an OAF page from JavaScript

I had this requirement where I had to pass the url generated in OAF to Java script. In Javascript I have a link, when clicked needs to go back to OAF page. The problem I had was when I pass just "OA.jsp?OAFunc=<functionname> it was throwing me an error.

You are trying to access a page that is no longer active.
- The referring page may have come from a previous session. Please select Home to proceed.

Continue reading
12829 Hits
0 Comments

how to call an external url from Oracle Apps Function

The below code snippet will help you to call an external application like ADF based or any other websites like google from oracle apps.You can register the function to call the external url.I had used this technique 3 years back to integrate an ADF application with oracle R12.

Continue reading
18923 Hits
0 Comments

How to read the file from filesystem and display it on the OA Framework Page

Requirement was to build an OAF page which will display the files stored in the filesystem.OA Framework doesn't support this functionality natively.But core java comes in handy during these situations.

Challenges:

1) Dynamically read the files from a specific directory.
2) Create the link items dynamically and provide action type programatically
3) Filter the files by name
4) Open the pdf file using a custom function(OA Framework supports FileDownload from a blob but we need to show that from file-system).

Below code addresses all the challenges above and creates a seamless approach to read the file from filesystem and display them in an OAF Page.

Continue reading
21118 Hits
0 Comments

How to send email and save the pdf to the file system with BI Publisher

I got this requirement recently with one of my client to send an email as well as save the pdf on the file system for future audit purpose.The existing program was sending the email attachment with the bursting Control file,but now we have to include the option to save it to the file system after the email is sent.I went with the multiple delivery channel approach to get the functionality working..the code snippet for the bursting file is available below.

Continue reading
16842 Hits
0 Comments

How to Update Start Date and End Date of an Oracle Project

Recently I had this requirement to update the project start date and end date on a oracle project.This requires lot of validations before update can be performed but the below API really simplified my work..Have a look at the below API sample Call

Continue reading
13890 Hits
0 Comments

How to find the list of users with Vacation Rules enabled in Orace Apps

Here is the code snippet for querying the list of users who have vacation rules enabled.

Continue reading
21628 Hits
0 Comments

How to show multiple error messages in OA Framework

Sometimes you have to show all the error messages at one shot,instead of showing the error messages one by one. In that case, we have to use bundled exception to show multiple error message. Below are the steps:

Continue reading
20357 Hits
0 Comments

Where to download Oracle workflow client

Use the below link to download the Oracle Workflow Client.It was a  real struggle to find this for some reason :)

Continue reading
19802 Hits
0 Comments

How to get the handle to an Advanced Table Item in OAF

Recently I had this question in asksudhakar.com,below code snippet will get you the handle to the item inside the advanced table.This is straight forward with classic table but for advanced table you need to get the handle to the column bean and then to the item.

            OAAdvancedTableBean table = (OAAdvancedTableBean) webBean.findIndexedChildRecursive("region2");
            OAColumnBean columnForStatus = (OAColumnBean)table.findIndexedChildRecursive("column4");
                        OAImageBean statusImageBean =               (OAImageBean)columnForStatus.findIndexedChildRecursive("StatusImage");
Continue reading
25683 Hits
0 Comments

Create a Page Button Bar region and Button at Run Time in OAF

    Below code is used for creating a new page button bar region and then adding a button inside that region to display in the top and bottom of the page.

        OAPageButtonBarBean pageButtonBean = (OAPageButtonBarBean)createWebBean(pageContext,OAWebBeanConstants.PAGE_BUTTON_BAR_BEAN,null,"pbBar");

        OAButtonBean oasb= (OAButtonBean)createWebBean(pageContext,BUTTON_BEAN, null, "BUTTON");

        String msg1=pageContext.getMessage("FND","FND_CANCEL",null);

       oasb.setText(msg1);

        pageButtonBean.addIndexedChild(oasb);

      OAPageLayoutBean page = (OAPageLayoutBean)webBean;

      page.setPageButtons(pageButtonBean);

 

Continue reading
23375 Hits
0 Comments

How to download multiple messages with one fndload command

This is pretty simple.Use the command below.

FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afmdmsg.lct  XXCH_B2CE091_MESSAGES.ldt FND_NEW_MESSAGES APPLICATION_SHORT_NAME="XXCH" MESSAGE_NAME="XXCH_B2CE091%"

Where MESSAGE_NAME can be like 'XXCH%' or '%XXCH%' or '%XXCH'

Continue reading
19717 Hits
0 Comments

How to build HGrid Page in OA Framework

HGrid is nothing but a Hierarchical Grid in OA Framework.It is a combination of Tree and the Table Grid.It is usually used for displaying hierarchical data in a Table.

There are two ways to build a HGrid with DML Operations.

1) Traditional Web Method where you can display the data on the Hgrid.For Create and Update,you need to navigate to a different Page.

2) Advanced HGrid where you can create the records as well as update them on the Hgrid itself.

 

Continue reading
24361 Hits
0 Comments

Oracle Site Hub - An Overview

Oracle Site Hub is a location mastering solution that enables organizations to centralize site and location specific information from heterogeneous systems, creating a single view of site information that can be leveraged across all functional departments and analytical systems. Site Hub has integrations to Property Manager, Assets Management and few other modules. Oracle Site Hub module is available from R12.1.1 version.

Continue reading
16447 Hits
0 Comments

Extending the PageLayoutRN of a Page in OAF

I had this requirement where I had to use the same page structure but change few things in the page dynamically.I extended the PageLayoutRN of the original page and dynamically created few links and other things that I had to do in that page.

Continue reading
5184 Hits
0 Comments

How to make a custom table MOAC Compliant

If you are working on a R12 environment and your company is planning for MOAC support then the below post will help you to make your custom tables MOAC Compliant.

Continue reading
20635 Hits
0 Comments

List of Lookups -- Oracle Property Manager -- Part 3

Most of the validations in Oracle Property Manager happens through lookups.Below is the list of lookups available in PM.

 

Continue reading
21060 Hits
0 Comments

List Of Base Tables -- Oracle Property Manager -- Part 2

Here is the list of base tables in Oracle Property Manager.Some of the important tables are below

Property:

PN_PROPERTIES_ALL

PN_LOCATIONS_ALL

Leases :

PN_LEASES_ALL

PN_LEASE_DETAILS_ALL

PN_OPTIONS_ALL

PN_PAYMENT_TERMS_ALL

PN_DISTRIBUTIONS_ALL

 

Variable Rent Agreement:

PN_VAR_LINES_ALL


PN_VAR_PERIODS_ALL


PN_VAR_RENTS_ALL


PN_VAR_RENT_DATES_ALL


PN_VAR_RENT_INV_ALL


PN_VAR_RENT_SUMM_ALL

Full list is here:

Continue reading
26242 Hits
0 Comments

Introduction to Oracle Property Manager -- Part1

Having worked on Oracle Property Manager for last 5 years,I would like to share my experience on Oracle Property Manager with the world.

Introduction:

Oracle Property Manager is the Property Management solution from Oracle for the Retail and Real Estate clients.It was introduced back in 1998 as part of the Oracle EBS,it has travelled a very short distance interms of maturity.This is mainly because the number of Clients are less compared to some of the modules of Oracle EBS.Oracle Property Manager is a lease based system and has tight integration with AP,AR and GL

Continue reading
21914 Hits
0 Comments

Change LOV Query through Forms Personalization

Recently I had this requirement to restrict some of the values on an existing LOV item in a EBS form.Below are the steps required for the same.

Continue reading
21705 Hits
0 Comments

How to create a FormValue item programatically in OAF

It is little weird that I couldn't find any documentation related to creating a OAFormValueBean programatically.I had the issue in my current project where we need to create the form value item programatically(Dynamically).Here is the code snippet for the same.

Continue reading
23884 Hits
0 Comments

Remove Locks from Oracle Tables

I frequently find myself in a situation where I have to remove the lock from tables.Here is the script I use to remove the locks.

Continue reading
17496 Hits
0 Comments

OA Framework Book - R12.1.1

Full fledged book on OA Framework is released by Chola Press which covers Java Basics for OA Framework developers, Advanced Table Pages, Google Style Auto suggest LOV ,Standard Pages Extension and OA Framework Interview Questions.
Continue reading
5793 Hits
0 Comments

How to Call OAF Page from Workflow Email Notification

There was a requirement with one of my client  to open an OAF page from workflow email notification.  In R12  below error will occur if you try to open an OAF Page URL link directly.

You are trying to access a page that is no longer active.
- The referring page may have come from a previous session. Please select Home to Proceed.

Note: When you call a standard page this error won't appear. This happens only when you try to open a custom page.

Below are the steps to resolve the error:

Continue reading
32117 Hits
0 Comments

How to Launch WebADI Document from OA Framework

I came across this requirement some time back where I have to open the webadi document dynamically from my OAF page.You can write this method in the CO and open the webadi doc from the OAF page.Below is the sample code for the same.
Continue reading
9089 Hits
0 Comments

Oracle Applications Multiple Organizations Access Control for Custom Code [ID 420787.1]

I was developing an OAF Page which has to support MOAC in R12.1.1.The below metalink note become thirukural to me as I start building those pages with ease.

Oracle Applications Multiple Organizations Access Control for Custom Code [ID 420787.1]

 

Continue reading
20807 Hits
0 Comments

How to get MOAC specific data in R12 from SQL Plus or Toad

begin
 fnd_global.apps_initialize(:user_id,:responsibility_id,:responsibility_application_id);
 mo_global.init(':product_short_name');
end;

Continue reading
21409 Hits
0 Comments

How to compare SysDate with any other Date in OAF

This is a very common requirement in any OAF project. The logic for Validating the date can be added in EO or AM. Below is the code that will help in comparing the sysdate with any date value. Below code is writtten inside the setter method in the EO.Ofcourse you can write it anywhere in AM also.
Continue reading
12227 Hits
0 Comments

How to perform SSN format validation in OA Framework

I recently came across this requirement in one of my project. The business requirement is to validate the SSN format in an OAF page. The US SSN format is xxx-xx-xxx. User has to provide the SSN value in this format. If he provides any other format we have to throw a user friendly error message.

In this article I will take you through the steps in performing the SSN format validation.
Continue reading
8138 Hits
0 Comments

Oracle Property Manager Lease Administration Flow

Lease administration flow is one of the key flow  in Oracle Property Manager.Having worked with Oracle Property manager for last 4 years,there are lot of clients require a good real estate solution but oracle never met the demands of clients through Oracle Property manager.

But good news is they are catching up with it by understanding the demand for it in the market now.

The below screenshot shows a simple workflow of the Lease Administration cycle.More useful property manager articles will be available in premium section.

 

 

 

 

 

Continue reading
17984 Hits
0 Comments

How to set the sequence value while saving the record in OA Framework

This is a requirement where people are used to Oracle forms style generation of unique number.The unique identifier for the record is derived from a database sequence when user saves the record in an OAF page.Most of the OAF pages developed by me has the sequence automatically generated in the Create method of the EO when user navigates to the screen.

Drawback of that approach is if user navigates to the create t screen and doesn't click on apply button then the sequence value will elapse and wasted.To avoid this ,follow the approach below to  simulate the Forms Style Generation of the unique Number.

Continue reading
27483 Hits
0 Comments

Dynamic Color Coding in OA Framework Table

Continue reading
5993 Hits
0 Comments

Chola Global's Google Style Auto Suggest LOV

This E-Book covers the Google Style Auto Suggest LOV functionality for OA Framework on a custom OA page. Same method can be used to extend any standard page by using personalization. This is completely a Noninvasive approach to introduce Google Style Auto Suggest LOV functionality for your standard LOV or text items. Support Available at OracleArea51 Forums.

Below is the preview of eBook with some pages hidden.

 

Continue reading
3365 Hits
0 Comments

How to compare two dates in OA Framework

This is a very common scenario where you have to compare two dates in OA Framework.For example there is a start date and end date for an employee.Business scenario is start date should not be greater than the end date.To achieve this scenario in OA Framework you have to put the below code under Validate Entity method in your EOImpl.java since this is a cross attribute level validation.

Now let us see how we can develop the code for above said functionality.

 

Continue reading
25132 Hits
0 Comments

Unable to create an entity object from R12 Jdev

Issue : Unable to create an entity object from R12 Jdev when you configure the Jdev for the first time.

Resolution :  As below

Continue reading
24068 Hits
0 Comments

Dynamically Color the Rows in an OA Framework Advanced Table

In this article we will walk you through the steps of how to Dynamically change the color of a column in an Advanced Table. Depending on the value of Job of each row the color needs to be changed for a particular column. For all other columns a different color needs to be changed. Eg: If the value for Job is " Manager" then the background color will be Red. For all other columns it will be Orange.

Continue reading
28493 Hits
0 Comments

How to Convert Key Flexfield Segments to an ID

Recently I came across a scenario where I have to validate the key flexfield segments passed  and derive the id for it.Below generic routine helped me to achieve that.

http://oraclearea51.com/code/code-snippets/pl sql/convert-key-flexfield-to-id-in-oracle-apps_11.html

Continue reading
21857 Hits
0 Comments

Oracle Form Style Master Detail Page for OA Framework

This is an eBook from Chola Global Authored by Sudhakar Mani and Aarthi Sudhakar.This book guides the readers to build a Master Detail Page which Mimics the Standard Oracle Forms. Free support for the readers is available at OracleArea51 Forums. Contact This email address is being protected from spambots. You need JavaScript enabled to view it. for any queries
Continue reading
7868 Hits
0 Comments

Chola Global's VO Extension eBook

This is an eBook from Chola Global Authored by Sudhakar Mani and Aarthi Sudhakar.This book guides the readers to perform a VO Extension on Supplier Page. Free support for the readers is available at OracleArea51 Forums. Contact This email address is being protected from spambots. You need JavaScript enabled to view it. for any queries.
Continue reading
6021 Hits
0 Comments

Create Department Table SQL Script





Create Department table script
1
2
3
4
5
6
 CREATE TABLE "DEPT" 
   (	"DEPTNO" NUMBER(2,0), 
	"DNAME" VARCHAR2(14 BYTE), 
	"LOC" VARCHAR2(13 BYTE), 
	PRIMARY KEY ("DEPTNO")
   )

 


Continue reading
8638 Hits
0 Comments

Create Employee Table SQL Script





Create Employee Table Script
1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE "EMP" 
   (	"EMPNO" NUMBER(4,0) NOT NULL ENABLE, 
	"ENAME" VARCHAR2(10 BYTE), 
	"JOB" VARCHAR2(9 BYTE), 
	"MGR" NUMBER(4,0), 
	"HIREDATE" DATE, 
	"SAL" NUMBER(7,2), 
	"COMM" NUMBER(7,2), 
	"DEPTNO" NUMBER(2,0), 
	 PRIMARY KEY ("EMPNO")
)

 


Continue reading
8092 Hits
0 Comments

Delete Row Code in OAF





Delete Row Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
public void deleteEmployee(String employeeNumber)
{
int empToDelete = Integer.parseInt(employeeNumber);
 
OAViewObject vo = (OAViewObject)getEmployeeSummaryVO1();
EmployeeSummaryVORowImpl row = null;
 
int fetchedRowCount = vo.getFetchedRowCount();
RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
if (fetchedRowCount > 0)
{
deleteIter.setRangeStart(0);
deleteIter.setRangeSize(fetchedRowCount);
for (int i = 0; i < fetchedRowCount; i++)
{
row = (EmployeeSummaryVORowImpl)deleteIter.getRowAtRangeIndex(i);
 
 
Number primaryKey = row.getEmployeeId();
if (primaryKey.compareTo(empToDelete) == 0)
{
// This performs the actual delete.
row.remove();
getTransaction().commit();
break; // only one possible selected row in this case
}
}
}
// Always close the iterator when you're done.
deleteIter.closeRowSetIterator();
} // end deleteEmployee

 

Recent Comments
Divesh
Hi If we remove the break statement from the code then it fails with Nullpointer exception with the cause deadviewrowaccessexcepti... Read More
Wednesday, 14 August 2019 13:48
Sudhakar Mani
Hi Divesh, From the OAF Beginners Guide.. public void deleteEmp() { OAViewObject vo = (OAViewObject)getEmpDetailsVO1(); EmpDetai... Read More
Tuesday, 20 August 2019 13:24
Continue reading
6690 Hits
2 Comments

Create Page Code in OAF





Create Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public void createEmployee()
  {
    OAViewObject vo = (OAViewObject)getEmployeeFullVO1();
 
 
    // Per the coding standards, this is the proper way to initialize a
    // VO that is used for both inserts and queries.  See View Objects
    // in Detail in the Developer's Guide for additional information.
 
    if (!vo.isPreparedForExecution()) 
    { 
      vo.executeQuery(); 
    } 
 
    Row row = vo.createRow();
    vo.insertRow(row);
 
   // Required per OA Framework Model Coding Standard M69
   row.setNewRowState(Row.STATUS_INITIALIZED);
 
 
  } 

 

Continue reading
6774 Hits
0 Comments

Cancel Button Code for OAF Page







Cancel Button Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if (pageContext.getParameter("Cancel") != null)
   {
     am.invokeMethod("rollbackEmployee"); 
 
     // Indicate that the Create transaction is complete.
     TransactionUnitHelper.endTransactionUnit(pageContext, "empCreateTxn");
 
     pageContext.forwardImmediately("OA.jsp?page=/oracle/apps/fnd/framework
/toolbox/labsolutions/webui/EmpSearchPG"
,
null, OAWebBeanConstants.KEEP_MENU_CONTEXT, null, null, true, // retain AM OAWebBeanConstants.ADD_BREAD_CRUMB_NO); }  

 

Continue reading
10276 Hits
0 Comments

Delete Row in OA Framework

How to search a view object row set for a single selected object so that the entity object can be deleted.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
public void delete(String poHeaderId)
{
  // First, we need to find the selected purchase order in our VO.
  // When we find it, we call remove( ) on the row which in turn
  // calls remove on the associated PurchaseOrderHeaderEOImpl object.
 
  int poToDelete = Integer.parseInt(poHeaderId);
 
  OAViewObject vo = getPoSimpleSummaryVO(); 
  PoSimpleSummaryVORowImpl row = null;
 
  // This tells us the number of rows that have been fetched in the
  // row set, and will not pull additional rows in like some of the
  // other "get count" methods.
 
  int fetchedRowCount = vo.getFetchedRowCount();
 
  // We use a separate iterator -- even though we could step through the
  // rows without it -- because we don't want to affect row currency.
  // Note that there are also convenience methods for finding matching rows
  // in a view object (see javadoc).
 
  RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");  
 
  if (fetchedRowCount > 0) 
  { 
    deleteIter.setRangeStart(0); 
    deleteIter.setRangeSize(fetchedRowCount); 
 
	for (int i = 0; i < fetchedRowCount; i++) 
    { 
      row = (PoSimpleSummaryVORowImpl)deleteIter.getRowAtRangeIndex(i); 
 
	  // For performance reasons, we generate ViewRowImpls for all
      // View Objects. When we need to obtain an attribute value,
      // we use the named accessors instead of a generic String lookup.
 
      // Number primaryKey = (Number)row.getAttribute("HeaderId");
      Number primaryKey = row.getHeaderId();
 
	  if (primaryKey.compareTo(poToDelete) == 0)
      {
        row.remove();
        getTransaction().commit();
        break; // only one possible selected row in this case
      }
    } 
  } 
 
  deleteIter.closeRowSetIterator(); 
 
}

 


Continue reading
7086 Hits
0 Comments

Copy rows from one view object to another








Generic Routine
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
public static void copyRows(ViewObjectImpl sourceVO, 
ViewObjectImpl destVO)

{
if (sourceVO == null || destVO == null)
{
return;
}
 
AttributeDef[] attrDefs = sourceVO.getAttributeDefs();
int attrCount = (attrDefs == null)? 0 : attrDefs.length;
if (attrCount == 0)
{
return;
}
 
// Create a row set iterator on the source view object to use
for copy operation.

RowSetIterator copyIter = sourceVO.findRowSetIterator("poCopyIter");
if (copyIter == null)
{
copyIter = sourceVO.createRowSetIterator("poCopyIter");
}
 
// Indicates whether a copied row has been inserted into the
destination

// view object or not
boolean rowInserted = false;
 
while (copyIter.hasNext())
{
Row sourceRow = copyIter.next();
 

if (rowInserted)
{
destVO.next();
}
 

Row destRow = destVO.createRow();
 
for (int i = 0; i < attrCount; i++)
{
byte attrKind = attrDefs[i].getAttributeKind();
 

if (!(attrKind == AttributeDef.ATTR_ASSOCIATED_ROW ||
attrKind == AttributeDef.ATTR_ASSOCIATED_ROWITERATOR ||
attrKind == AttributeDef.ATTR_DYNAMIC))
{
String attrName = attrDefs[i].getName();
 

if (destVO.lookupAttributeDef(attrName) != null)
{
Object attrVal = sourceRow.getAttribute(attrName);
 
if (attrVal != null)
{
destRow.setAttribute(attrName, attrVal);
}
}
}
}
 
// Insert the copied row into the destination view object.
destVO.insertRow(destRow);
rowInserted = true;
}
 
copyIter.closeRowSetIterator();
destVO.reset();
}
 

 

Continue reading
9079 Hits
0 Comments

Kill Locked Session

1
2
3
4
5
6
7
8
9
10
11
12
SELECT 'ALTER SYSTEM KILL SESSION ''' || SID || ',' || 
SERIAL# || ''';' KILL_SQL

, MACHINE
, ORACLE_USERNAME
, OS_USER_NAME
, LOCKED_MODE
, OBJECT_NAME
, OBJECT_TYPE
FROM V$LOCKED_OBJECT A
, DBA_OBJECTS B
, V$SESSION C
WHERE A.OBJECT_ID = B.OBJECT_ID
AND A.SESSION_ID = C.SID

 

Continue reading
4143 Hits
0 Comments

How to Call OAF Page from Form Personalization

Recently I had this requirement and I was scratching my head to find a solution for the below scenario.

1) I have to call a OAF Page Function from Forms Personalization.
2) Pass a paramater value derived from the form which has a SPACE in the Value.
Ex: 1955 US WAGON
Continue reading
10989 Hits
0 Comments

Exporting OA Page Definitions

The Page xml files(*PG.xml) and region xml(*RN.xml) files resides in the database. So you have to import the file into the database to make it work in the instance. Oracle application provides XMLExporter/XMLImporter to export and import page files from and to the database.

Continue reading
20160 Hits
0 Comments

OBIEE Architecture/Components

The main components of OBIEE are :
  • Oracle BI Presentation Services
  • Oracle BI Applications.
Now let us see what are the use and definitions of all the components.
Continue reading
11483 Hits
0 Comments

Installing OBIEE on Windows

Oracle Business Intelligence Suite Enterprise Edition Plus (Oracle BI EE Plus) is a comprehensive suite of enterprise BI products that delivers a full range of analysis and reporting capabilities.
Continue reading
8550 Hits
0 Comments

How to Add Custom CSS Class to your OAF Page

Recently I had a requirement to force the user to enter the supplier name in UPPER CASE.Since this was an OAF page,I thought several approach to achieve it.But finally I got a clue from Reetesh Sharma with his working code.

I had extended the base page controller and in ProcessRequest method in CO,I had added below code.
Continue reading
15937 Hits
0 Comments

Basics of WSDL


WSDL is Web Service Definition Language.It is an XML-based language for describing Web services and how to access them.WSDL is also used to locate Web services.It is a W3C recommendation.
Continue reading
5458 Hits
0 Comments

How to find OPMN Port Number

OPMN port number is one of the important port numbers which you will always need.Like for creating server connections also you will need to know the opmn port number. so here is how you can find the opmn port number.
Continue reading
7368 Hits
0 Comments

What is FlexMap in oracle R12.1.1?

FlexMap is required in R12.1.1 when you have a DFF displayed on an OAF page and the reference field is used.

Prior to R12.1.1, DFF in OAF page had a restriction with Reference fields.But R12.1.1 had solved that issue and now it is available to use in OAF page too.
Continue reading
9724 Hits
0 Comments

DFF Issue with Supplier Site Entry in R12.1.1

I had faced an interesting issue in R12.1.1 when we upgraded from 11i to R12.1.1.Supplier Site Entry page doesn't save the DFF data on click of apply button.

Resolution:

1) Click on the apply button in the dff page once and click apply button once more on the supplier Sites Page.This will resolve the issue and save the dff data.
Continue reading
7152 Hits
0 Comments

How to call BPEL Process from ADF Page

Below is the link to OTN viewlet which explains you about "How to call a BPEL Process from ADF Page"

It was well presented and kudos to the author Susan

Click for the Screencast
Continue reading
5796 Hits
0 Comments

Custom Look and Feel (CLAF)

This article is an example which will show you how to create custom look and feel for your application.The Responsibility that needs to be added to the user for working with CLAF is
Continue reading
7777 Hits
0 Comments

How to launch Workflow from OAF page?

This is a frequent requirement in many OAF based projects.There is another article from Reetesh which explains how to call a workflow from pl/sql and OAF.The below code can be written in CO.
Continue reading
10472 Hits
0 Comments

Exporting and Importing Personalization in OAF

In this article we will see how to import and export OA Framework personalization.I will add an item by personalizing the page. Then we will export the personlization and then import back the personalization.
Continue reading
12749 Hits
0 Comments

How to get the DBC file for your OAF Development

If you had just started OAF development,you would have come across the word DBC file.You have to refer this file in OAF runtime connection in JDEV.There are two ways to get this file to your local machine.

Continue reading
13678 Hits
0 Comments

EO Extension in OA Framework

EO Extension is basically done when you want to do some more validations or business logic to your application. In this article we will see how to default a value for EmailAddress while running the Create Page. We are going to Extend the EmployeeEO of the Search excercise.
Continue reading
8994 Hits
0 Comments

Deploying the VO Substitution

You must have read about the VO Extension. After doing the extension you need to deploy the substitution for the change to take effect in the application.
Continue reading
7946 Hits
0 Comments

Controller Extension in OA Framework

In this tutorial we will see how to extend a controller class.We are going to use the Hello World page and extend the processFormRequest Method. I am going to personalize the page and add the new controller for the pagelayout region.
Continue reading
10373 Hits
0 Comments

Adding attachments in a OAF Page


In this tutorial we will see how to add a attachment in OAF. Here we are going to add a new item in a table and set the item style as attachmentImage.
Continue reading
27104 Hits
0 Comments

Adding the new region to the Application Home Page using Personalization in OAF

In this tutorial we will see how to add a region to the Home page using Personalization which displays the Username,UserId and Email address of the user logged in to the application in the Applications Home Page.
Continue reading
12262 Hits
0 Comments

How to Open webADI Document from Excel 2007

There was a VB error when I tried to open the webADI document using Excel 2007.I am pretty sure that
the issue is with macro,but some how I couldn't find the navigation to enable the macro.I had put together an simple screencast to show you how to successfully download the document to Excel 2007. 
{StickyNote}{/StickyNote}
Click here to view the screencast
Continue reading
6257 Hits
0 Comments

SOA Registry-Repository

There was a strong need to control and govern the service information artifacts within the SOA Deployment. The artifacts stored and managed were also needed to be consistent.A registry-repository is like your local library.
Continue reading
4224 Hits
0 Comments

Oracle Style Master Detail Page without using As and VL

To implement Master detail Page, we need to implement following functionalities:
1. Query lines whenever you are querying Header information
2. While creating New record Foreign key values should be passed from header to lines
3. Whenever we are going to delete header record, lines should also be deleted.
4. Like Oracle Style Forms it used to show some lines in detail block, same thing I've also implemented, whenever you want to    create new record it will show you 5 blank rows.

Continue reading
7007 Hits
0 Comments

Configuring the FTP Adapter in SOA Suite

Before using the FTP adapter there are few configurations that needs to be done. Which Server are we going to use,port number,user name and password for logging into the server and all these details needs to be configured. So let us see where and how to do it.
Continue reading
9123 Hits
0 Comments

Avoid Multiple Clicks on a Submit Button in an OAF Page

I had this requirement with one of my client some time back.The requirement is to restrict the user from pressing the submit button more than once.This requirement applies to all OAF projects,but some how people never noticed this behaviour.
Continue reading
12270 Hits
0 Comments

Tables and PPR: Implementing Mix of Editable and Non Editable Rows

I have a small requirement when I open a page it queries the data and at that time Table should be read only, user will be having an option to select rows using check box and when they will click on “Edit Button”, selected rows should be read-only.

Continue reading
7754 Hits
0 Comments

Creating Lookup in Oracle Apps

Lookups are like tables whose values are seldom or never updated. They are basically used for references. You can create look ups in oracle apps.For example if you to associate a value say 'M' for Male and 'F' for Female you can create lookups for this and can query the lookup.

Continue reading
12892 Hits
0 Comments