f Get Oracle Apps Traning Here: Applications in Oracle Apps

This work is licensed under a Creative Commons -NonCommercial 2.5 License.



Monday, October 16, 2006

Applications in Oracle Apps

In this training chapter I will explain what Application means, in Oracles context.

As a thumbrule, for one module there is one single application.

Uptill 8 years ago, it was mandatory for each table to be registered against an Application in Oracle Financials; but now such a relation no longer exist.

Oracle is a mixture of various applications like Payables, General Ledger, Payroll, Human Resources, manufacturing. You can call these modules, but officially these are called applications. Hence the name Oracle Applications(i think)

Is there a relation between application and table:-
Indirectly/logically there is, as the table is owned by a specific schema, and then a schema is related to an Application( though logically, as this relation is not enforced by the System).

What precautions do I take when creating a new table in oracle apps:-
Ans: Find out from DBA's the schema in which your custom tables are meant to be created. Create the desired table in custom schema. Note: If your custom table will support multi-org, then its name must finish with _all and also it must have a integer column named org_id

Qns: For an Oracle Apps developer, what else must be the consideration with respect to Application.
Ans: I will jump the training ship to explain this. In case you do not understand, then wait for the training lesson on concurrent programs.
a. Each program has an executable. For example reports have rdf, sql*plus has .sql file, forms has .fmx, Unix Shell Script has .prog(in apps) & D2k libraries have .plx
b. When you register an executable with Oracle Apps, you must then register this against an Application.
c. Each application is mapped to a specific path,say to a directory in unix box. For example, Applicaton XXPO (that holds PO Customizations) may map to /home/oracle/apps/appl/po
d. Say you have developed/customized a report for PO Module. Assume your report executable name is XXPOPRINT.rdf . If you register this executable with XXPO applicaton, then this rdf must be copied/ftp'ed to /home/oracle/apps/appl/po
e. When running this report in Oracle Apps, oracle will ask below series of questions to itself
I see that user is running XXPOPRINT.rdf, which applicaton is this report registered against? Oh well, it is XXPO application, then where is the directory location where I can expect to find this file? Oh ok, application definition of XXPO is mapped to /home/oracle/apps/appl/po (as per application definition), hence lets pick the rdf from /home/oracle/apps/appl/po/reports/US
Here lies the significance of applicaton in oracle apps.


Now some notes:-
1. Profile options can be defined at application level too.
2. All the Forms & Reports are attached to an Application.
3. Each application has a base path, which effectively is also the Environment variable on operating system.

The below image can be clicked to see how applications are defined in Oracle Apps. One needs to navigate to System Administrator responsibilotu. and select Menu /Application/Register.
As a developer, it is not your responsibility to define this, however I suggest that you understand this well.

Comments on "Applications in Oracle Apps"

 

Blogger Unknown said ... (8:12 AM) : 

Hi Anil,

Its My privilege to be the first person to post a comment for this section.

I need not praise you, it is evident from your work to find out how good you are.. Thanks a lot.

Small Sugestion, can you please elaborate on environment variable of Operating Unit.

Thanks and Best Regards,
Kishore Kantamneni

 

Blogger Anil Passi said ... (8:20 AM) : 

Hi Kishore,

It is the environment variable of Operating System, which can be unix or linux or windows based.

For example, on your PC, In Start/Run type cmd to open DOS command prompt.
Type in command named set and hit enter. You will see various system level variables pointing to different directories.
This is how your Windows PC knows where to search for executable.


Similarly, Oracle apps needs to know where to search for Reports/Forms etc being executed. For this it uses environment variables, per module.
For example, a report named POPINT.rdf will be in $PO_TOP/reports/US


In this case, PO_TOP is a environment variable, that can possibly point to a directory path /appl/xxprd/appl/po

Ditto for other modules like AR, AP , GL etc

Thanks,
Anil Passi

 

Blogger Unknown said ... (5:16 AM) : 

Hi Anil,

great work . I dont have any word to appricate you.

Thanks a lot yaar.

Niranjan

 

Anonymous Anonymous said ... (4:08 AM) : 

Hi Anil,

Where can i see this enviornment variable and its values
(I mean in which directory)

Thanks
Tony

 

Blogger Anil Passi said ... (4:12 AM) : 

Hi Tony

Please go to $APPL_TOP

Do ls *.env there

Thanks,
Anil

 

Blogger Unknown said ... (6:02 AM) : 

Can we find these detail in database like what is path statnds for $AU_TOP etc.

 

Blogger Jobin SP said ... (2:37 AM) : 

Hi Anil,
Is there is any user interfaces (through forms) are available in Oracle Apps to register new custom tables.

Thanks
jobin

 

Blogger Han said ... (9:40 AM) : 

Hi Anil,
I have learned a lot just by reading the your postings.
I have a question regarding the Oracle Financials application software. I like to know the direcotory or executable relationship between the Executable Method field in concurrent mgr program Define subset and the various programs.

Currently if it Executable Method is defined as SQL*plus, OF concurrent mgr will locate this *.sql program from ****\sql\ dir; and if it is defined as Host, OF concurrent mgr will go to ***\bin\ dir to pick up the program; if it is "PL/SQL Stored Procedure" it indicate this is a interface related package.

I have looked at application->Register, but it only specifies the directories with the application.

Please let me know if you need any more information to help me here.

Many thanks,
Hannah

 

Blogger Han said ... (9:44 AM) : 

Hi Anil,
I have learned a lot just by reading the your postings.
I have a question regarding the Oracle Financials application software. I like to know the direcotory or executable relationship between the Executable Method field in concurrent mgr program Define subset and the various programs.

Currently if it Executable Method is defined as SQL*plus, OF concurrent mgr will locate this *.sql program from ****\sql\ dir; and if it is defined as Host, OF concurrent mgr will go to ***\bin\ dir to pick up the program; if it is "PL/SQL Stored Procedure" it indicate this is a interface related package.

I have looked at application->Register, but it only specifies the directories with the application.

Please let me know if you need any more information to help me here.

Many thanks,
Hannah

 

Blogger Rahul Gatade said ... (3:12 AM) : 

hi Anil Sir,
its really very good to read your articles..
As I am a Fresher in this oracle apps world..I am learning most of the basic things from your site only.
Thanks for these article
one request..PLZ stick to these graphical representations that u are creating..these are really very much helpful..
Question : can't I set my own OS ENV variables ??
I got the .env files but could not be able to see the path these variables actually containing..one such variable was ORAAPPS.env

 

Blogger Rahul Gatade said ... (3:14 AM) : 

hi Anil Sir,
reached upto the files with .env extensions but could not be able to see the actual path they contain...one such file was ORAAPPS.env
can't I create my own OS ENV variables...

 

Blogger Rahul Gatade said ... (3:15 AM) : 

hi Anil Sir,
its really very good to read your articles..
As I am a Fresher in this oracle apps world..I am learning most of the basic things from your site only.
Thanks for these article
one request..PLZ stick to these graphical representations that u are creating..these are really very much helpful..
Question : can't I set my own OS ENV variables ??
I got the .env files but could not be able to see the path these variables actually containing..one such variable was ORAAPPS.env

 

Blogger Unknown said ... (1:51 AM) : 

Great Work..

 

Blogger Unknown said ... (1:59 AM) : 

Hi Anil,
Am creating a Blanket PO,in a release leve i want to add a new line,ie while i create a work order for 100 qty but the supplier is send only 25 ,so the po requesition is created for 100 qty but i receive only 25 i want to add one more line ie 25 is received and the original 100 will be updated to 75.is it possible to do

 

Blogger Anil Bhan said ... (2:21 AM) : 

Anil,

Doing great work.

Anil

 

Anonymous Anonymous said ... (12:03 PM) : 

Hi Anil,

I dont know if I am writing on the correct spot..

I really admire you for all your good work !!..

I have a question regarding FND_GLOBAL.APPS_INITIALIZE. Actually I am using the same from a sql session in a shell script, which is registered as a host program.

Right now I have hardcoded the the parameters for the fnd_global.apps_initialize. is it possible to pass parameters to the same as variables??

Thank you so much in advance!!
Asha

 

Blogger Anil Passi said ... (2:24 PM) : 

Hi Asha

The parameters passed by concurrent manager to a host program are
$0 - Shellscript name
$1 - Oracle username/password
$2 - User_id
$3 - Oracle Applications username
$4 - Concurrent request id

Please see metalink note Note:29086.1 for details.

It appears that you do have to hardcode some of the ID's if you wish to instantiate SQL*Plus Session.

Instead, why dont you write a Java Concurrent Program?

Thanks,
Anil Passi

 

Blogger Anil Passi said ... (3:45 PM) : 

You can also try the solution below:-

1. Create Parameters to your host concurrent program
2. These parameters will be ApplicationId and ResponsibilityId etc.
3. Assign these default values of type SQL Statement. The SQL Statement will be select fnd_global.resp_id etc.
5. In your hot program, access these are $5, $6 etc

Thanks,
Anil Passi

 

Anonymous Anonymous said ... (6:13 AM) : 

great article man. thanks,
yovin

 

Blogger Ganesh said ... (3:13 AM) : 

Hi Anil,

Its learly nice, our company going to impliment oracle apps through Wipro but they are not corporating or involving me. I am technical person delevoping and implimeted software in asp and vb ,sql server what should do.

Ganesh

 

Blogger Unknown said ... (11:37 AM) : 

hi anil
i am new to oracle apps(technical).
i mean i know all the concepts and fundaas.but do not really get the head and tail.i mean how to integrate the concepts to so that it makes sence while learning
.if u can tell how to go about apps in a clear cut way..

 

Blogger Unknown said ... (11:39 AM) : 

hi anil
i am new to oracle apps(technical).
i mean i know all the concepts and fundaas.but do not really get the head and tail.i mean how to integrate the concepts to so that it makes sence while learning
.if u can tell how to go about apps in a clear cut way..

 

Blogger tibbu said ... (12:19 PM) : 

hello anil, i have a suggestions for you. if we can have a timestamp for our comment then it wud be gr8 to know how active the site is and how often you r getting comments.

have few questions
when we have pl/sql, why do we have to use java in forms or reports? why do we have some java programs registered as concurrent programs.
and how to migrate from forms 6i to forms 10g??
and
how to convert .rdf reports to xmlpublisher reports??

thanks
raghu

 

Blogger Prosenjit Manna said ... (8:00 AM) : 

Hi Anil,
This is Prosenjit.First of all I would like to thanks for your wonderful job.Its really great.I have never seen websites related to Oracle apps ever before.
I have just a simple question.What does actually mean the different modules of Oracle apps.Are they Financial,HRMS,SCM.. or some thing other.
Please do let me know.

 

Anonymous Anonymous said ... (1:22 PM) : 

Hello Anil,

I love your blog. Each article is to the point and very clear to understand. I am working as an Oracle Apps DBA. I want to learn technical too. Could you please advise how I can go about it?

Regards,
Imran Khan

 

Blogger shravan.k said ... (10:50 PM) : 

good work .it has helped me to learn a lot


thanks
anil

 

post a comment