Beruflich Dokumente
Kultur Dokumente
Applications: Customizing
OA Framework Applications
Course Labs
Lab 1..............................................................................................................................................................4
Task 1: Login to Your E-Business Suite Instance .....................................................................................5
Task 2: About This Page Link ...................................................................................................................8
Solution......................................................................................................................................................14
Lab 2..............................................................................................................................................................25
Task 1: Preparation ....................................................................................................................................26
Task 2: Modify the FWKTEST User.........................................................................................................27
Task 3: Set-up the NX Client on Your Classroom PC...............................................................................29
Task 4: Open the NX Client on Your Classroom PC ................................................................................32
Task 5: Unzip Tutorial.zip.........................................................................................................................34
Task 6: Set Your JDeveloper Environment ...............................................................................................35
Task 7: Start JDeveloper............................................................................................................................36
Task 8: Get the DBC File ..........................................................................................................................38
Task 9: Test Your JDeveloper Workspace and Project .............................................................................39
Task 10: Set-up Your Database Connection..............................................................................................42
Task 11: Set Your Project Properties.........................................................................................................48
Task 12: Test Your JDeveloper Set-up......................................................................................................54
Task 13: Optional Personal Set-up .........................................................................................................57
Lab 3..............................................................................................................................................................58
Step 1. Setup your environment for OA Framework development............................................................59
Step 2. Create the Model-layer Components .............................................................................................61
Step 3. Create the View-layer Components...............................................................................................67
Lab 4..............................................................................................................................................................74
Task 1: Create a new responsibility for iExpenses ....................................................................................75
Task 2: Create a new responsibility for Manager Self Service ..................................................................77
Task 3: Create a new responsibility for iProcurement ...............................................................................78
Task 4: Create Your User ..........................................................................................................................79
Task 5: Test your own User.......................................................................................................................81
Task 6: Set Profile Options........................................................................................................................83
Task 7: Learn the Administrator-level Personalization UI ........................................................................88
Task 8: Create Administrator-seeded User-level Personalizations ............................................................90
Task 9: Test Your Administrator-seeded Personalizations........................................................................94
Task 10: Add a Tip to a Page.....................................................................................................................95
Task 11: Add Button links.........................................................................................................................98
Task 12: Rearrange the Regions on a Page................................................................................................100
Task 13: Add a Column to a Table - Analysis...........................................................................................102
Task 14: Add Column to the Table............................................................................................................105
Task 15: Reorder Table Columns ..............................................................................................................107
Task 16: Personalize Privacy Link Globally Across Pages .......................................................................108
Task 17: Disable Your Personalizations ....................................................................................................110
Task 18: Using the Functional Administrator............................................................................................112
Copyright Oracle Corporation, 2007. All rights reserved.
Course Labs
Lab 1
3. The detailed steps to answer this question are shown at the end of this lab. But,
with what you know about OA Framework, and a little exploration, you should be
able to answer these questions.
4. What is the full name of the page? (complete path)
__________________________________________________________________
5. What is the version of the page?
__________________________________________________________________
6. What is the name of the pageLayout region (and therefore is the name of the
page)?
__________________________________________________________________
7. What is the root AM of the page?
__________________________________________________________________
8. What controller does the pageLayout region use?
__________________________________________________________________
Copyright Oracle Corporation, 2007. All rights reserved.
10
19. Are there any other AMs used by the page? (Circle one)
YES / NO
20. If Yes, list the other AMs used by the page?
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
__________________________________________________________________
21. Question 16 asked what VO was being used. What is the complete path to that
VO?
__________________________________________________________________
22. What is the EO associated to the VO from Question 16/21? (list the full path)
__________________________________________________________________
23. Does this page use any flexfields? (Circle one)
YES / NO
24. List the flexfield used by this page?
__________________________________________________________________
25. Click the GrantsResultsVO link to drill-down to the details of this VO.
26. What version is this VO?
__________________________________________________________________
27. Does this VO use an EO? (Circle one)
YES / NO
28. If Yes, list the complete name of this EO?
__________________________________________________________________
29. Does this EO have an associated EntityExpert? (Circle one)
YES / NO
11
12
13
Solution
14
15
16
17
18
32. List four (4) attributes that are contained in the VO?
List any 4 of the following: GrantGuid, GranteeType, GranteeKey, MenuId,
ObjectId, InstanceType, StartDate, EndDate, GranteeName, ObjectName,
MenuName, SetType, GrType, PsetType, InsType, Name, ObjType,
LastUpdateDate, ProgramTag, Date, AccessPolicy, InstanceSetName,
InstanceSetId
33. Click the Return to About Page link.
19
20
21
44. Where does APPL_TOP point to on this server? (list the complete path)
/appltop/apps/apps_st/appl
45. Click the Profiles tab.
22
23
24
Lab 2
25
Task 1: Preparation
This lab takes you through setting up the user for your course.
Throughout this course, you will be asked to designate your name, or some other
unique identifier. You can use your initials. You can use your classroom terminal
number. The only requirement is that it is unique to you. Once you have selected that
designation, use it consistently throughout the remainder of the course.
Important Information:
You need to get the following from your instructor:
Your Host:
________________________________________________
Your SID:
________________________________________________
http://___________________________________________
26
27
j.
Click the Save icon on the button bar to commit your changes.
28
2. If not already set-up, the NX Connection Wizard will open. Click the Next button
to continue with the NX Connection Wizard.
3. Set your Session to the same as your SID name. Set your Host as indicated by
your instructor. Set the Internet Connection Type slider to WAN. Click the Next
button.
29
4. Accept the defaults on the page. Click the Next button to continue.
5. Accept the defaults on the final page. Click the Finish button to continue. (Note:
You can ignore any screens that appear after you click the Finish button. If
necessary, click the OK buttons on any screens that might appear.)
30
31
3. The Login user default is nxuser1, and that is correct. The password is oracle.
Click the Login button to login to your server. When the NX Client finally logs in,
you will see a screen similar to the following:
32
33
2. A terminal window will open, and it will look similar to the following:
34
35
3. JDeveloper 10g with OA Extension will load, and it will appear similar to the
following:
36
37
38
4. If you encountered the Migration Warning, when the migration is complete you
will see the Migration Progress window. Click the OK button to continue.
39
5. You may encounter the Business Components Upgrade window. If you do, click
the OK button to continue.
7. JDeveloper will open the toolbox workspace. It will appear similar to the
following:
40
8. Expand the toolbox workspace. Click the [+] icon beside toolbox in the
Applications Navigator window.
41
42
43
44
45
46
14. When you exit the Create Database Connection wizard, you will return to the
Connections panel. It will appear as follows:
Note: You have two connections. The connection you just created (VX0321, as an
example) and fwk12dev. Fwk12dev is a default connection provided in JDeveloper.
It will not work. You can delete this connection if you like. Otherwise, just ignore it.
47
2. Double-click the Tutorial project, or right-click the Tutorial project, and select
Project Properties. This will open the Project Properties window that appears
similar to the following:
Note: If a migration window appears, click the OK button. You can safely ignore any
warning messages.
48
3. Click the Business Components category. It will appear similar to the following:
49
50
6. When the Edit Database Connection window opens, click the Test tab.
7. Click the Test Connection button.
8. You should see the Success! message.
9. Click the OK button to return to the Project Properties page.
10. Expand the Oracle Applications category, within the Project Properties window,
by clicking the [+] icon.
11. When you expand this category for the first time, you may get the following Login
window. Accept the defaults, which are User Name is apps, and Password is
apps.
12. Click the OK button to continue.
51
13. Select the Runtime Connections subcategory. Your screen should look similar to
the following:
14. The DBC File Name is initially blank. You can either input the path directly, or
you can browse for the specific DBC file. At the end, the DBC File Name field
should contain:
/home/nxuser1/jdevhome/jdev/dbc_files/secure/VX0321.dbc
15. The User Name is FWKTESTER.
16. The Password is FWKDEV.
17. The Application Short Name is AK.
Copyright Oracle Corporation, 2007. All rights reserved.
52
53
2. Right-click the test_fwktutorial.jsp file, and choose Run from the context menu.
54
Note: Ignore any warning messages. Click the OK button on any migration/upgrade
window. The first time any page runs in JDeveloper, it takes longer. Several files
need to be compiled. Numerous files need to be deployed to allow JDeveloper with
OA Extension to operate properly. After the first run, all subsequent test runs will
complete much faster.
3. Click the Hello, World! link.
4. When you see a screen similar to the following, you know that you have correctly
installed JDeveloper 10g with OA Extension, and you have configured it to work
properly with your E-Business Suite instance.
55
56
4. Close the terminal window, and reopen a new terminal window. Your
environment will automatically be set, and you can type JDev to start-up
JDeveloper.
57
Lab 3
58
59
60
Right-click the ClassProject project, and choose New from the context menu.
Select Business Tier > ADF Business Components > Application Module.
Click the OK button to open the Create Application Module wizard.
Click the Next button at the Create Application Module Welcome page.
Set the Package to oracle.apps.ak.<your name>.first.server.
Note: Make certain the package name is set properly. Carefully read any
defaults that may have been entered automatically.
17. Note that when you expand your oracle.apps.ak.<your name>.first.server, you
will see your newly created FirstAM.
61
18. Note that the AM created three (3) files noted in the Sources folder of the
Structure panel. Those files are
a. FirstAM.xml the declarative (XML-based) components of the AM.
b. FirstAMImpl.java the programmatic (Java-based) components of the
AM.
c. bc4j.xcfg the XML configuration which lists all the BC4J components
in your project.
19. Save your work.
Right-click the ClassProject project, and choose New from the context menu.
Select Business Tier > ADF Business Components > Entity Object.
Click the OK button to open the Create Entity Object wizard.
Click the Next button at the Create Entity Object Welcome page.
Set the Name to FwkTbxAddressesEO.
Set the Package to oracle.apps.ak.<your name>.schema.server.
Note: The default package name is not correct. You will have to enter this
package name manually.
62
Note: If the Database Objects is inactive (grayed out), then you need to reset
your projects database connection. Follow these steps.
a. Select the Cancel button to exit the Create Entity Object wizard.
b. Double-click the ClassProject project to open the Project Properties
windows.
c. Select the Business Components category.
d. In the Connection field, select the drop-down box, and select your
database connection from the list.
e. Select the Edit button to open the Edit Database Connection
window.
f. Select the Test tab.
g. Select the Test Connection button.
h. Test the connect for a Success! status.
i. Click the OK button.
j. Click the OK button.
k. Repeat Steps 1-7. This time the Database Objects should not be
inactive (grayed out).
8. All of FWK_TBX_ADDRESSESs table columns should be listed. If you dont
see the columns, do this.
a. Select the New From Table button.
b. Shuttle all of the columns from Available to Selected using the >>
button.
c. Click the OK button.
9. Click the Next button on Step 2 of 5.
10. Click the Next button on Step 3 of 5.
11. Select the following checkboxes:
a. EOImpl: Generate Java File
b. Accessors
c. Validation Method
d. Create Method
e. Remove Method
12. Click the Next button on Step 4 of 5.
13. Click the Next button on Step 5 of 5.
14. Select the Finish.
15. Note: Are you seeing lots of files in your Applications Sources that arent
yours? If you want to see just your files, here is what you do.
a. Double-click ClassProject to open the Project Properties window.
b. Select the Project Content category.
c. In the Include/Exclude window, you will probably note that it currently
shows (All), and the Include Content Subfolders is checked.
d. Click the Add button in the Included section.
e. In the Add Include Filter, expand oracle > apps, and then select the ak
folder.
f. Click the OK button.
g. Click the OK button.
Copyright Oracle Corporation, 2007. All rights reserved.
63
h. Now you should just see your files in the Applications Navigator.
16. Save your work.
64
4. Select AddressesVO from the Available View Objects pane, and shuttle it to
the Data Model pane.
5. Notice that when shuttled, AddressesVO becomes AddressesVO1. This is
expected behavior. You are taking the VO from just a definition to a instance
of that definition.
6. While we are in the AM Editor, you need to change one other setting. Select
the Custom Properties category.
7. Set the Name to RETENTION_LEVEL.
8. Set the Value to MANAGE_STATE.
9. Select the Add button to add this custom property.
Note: While not critical at this point, it is part of enabling Passivation on an OA
Framework page. All AMs should be set this way.
10. Click the Apply button.
11. Click the OK button.
12. Save your work.
65
66
Right-click the ClassProject project, and choose New from the context menu.
Select Web Tier > OA Components > Page.
Set the Name to FirstPG.
Set the Package to oracle.apps.ak.<your name>.first.webui
Click the OK button.
FirstPG is created. It is selected in the Applications Navigator panel, and it is
shown in detail in the Structure panel. Additionally, the Property Inspector
opens.
67
7. In the Structure panel, select region1. Then, using the Property Inspector, set
the following properties for this region.
a. ID: PageLayoutRN
b. AM Definition: Use the () to browse for your FirstAM.
(oracle.apps.ak.<your name>.first.server.FirstAM
c. Window Title: First Page
d. Title: FWK_TBX_ADDRESSES Query
8. Save your work.
9. To test your work, right-click FirstPG.xml in the Applications Navigator or
Structure panel, and choose Run from the context menu. Your page should
appear as follows:
10. While this isnt much, it is your first OA Framework page. Now, lets make it
do something.
Copyright Oracle Corporation, 2007. All rights reserved.
68
69
70
71
d. Note the Save Search button. This is on the page because we set the
User Personalization property on the ResultRN and its items to True.
e. For advanced challenge, create a User Personalization on your query
page.
72
This is a powerful technique. You can use this as a template to create a query page for
any table within an E-Business Suite instance, assuming that the E-Business Suite user
and password you are using for your project has the proper access.
Wheres the Controller? The Query Bean encapsulates the controller within the UI
component. There is no need to write an additional controller. This reinforces the notion
from the Basics of the Controller lesson. Only write a controller when you are required
to do so.
Congratulations! You have now completed your first OA Framework page.
73
Lab 4
74
1. Log into Oracle Applications with user name SYSADMIN and password
SYSADMIN. Your instructor will provide you with the URL to login to the
E-Business Suite instance assigned to your class.
2. Select the System Administrator responsibility.
3. Select Security: Responsibility > Define from the Navigator.
4. Create a new Responsibility with the following values. Replace XXX with your
terminal number as noted above.
Responsibility Name: XXX_iExpenses
Application: Payables
Responsibility Key: XXX_IEXPENSE
Available from radio button: Oracle Self Service Web Applications
Data Group Name: Standard
Data Group Application: Payables
75
76
77
78
Create your own username that you will use for most of the following labs. Navigate to
Security: User > Define.
1. Create a new user with the following values.
User Name: XXX_USER
Password: WELCOME (re-enter to verify)
Password Expiration: None
Person: Stock, Ms. Pat (Note: To put this Person into the field, type Stock into
the field, and then press the TAB key. A pop-up will open allowing you to
select Pat Stock. There may be several Pat Stocks in the instance. You need
to select the one that is employee number 24. Accept the error/warning you
get when associating Pat with your new user because this person is
associated with several user names.)
2. Assign the following responsibilities to your user:
Application Developer
Functional Administrator
Copyright Oracle Corporation, 2007. All rights reserved.
79
System Administrator
System Administration
Preferences SSWA
XXX_iExpenses
iExpenses
XXX Manager Self Service
Manager Self Service V3
Sourcing Super User
iProcurement
XXX iProcurement
Customizing Look and Feel Administrator
OA Framework ToolBox Tutorial Labs
OA Framework ToolBox Tutorial
3. Save your work.
80
4. Use your new login and password (WELCOME) to log in again. You will be
prompted to change your password.
_________________________________
81
82
Value
Yes
Yes
Yes
4. Query the Personalize Self-Service Defn profile option for your user.
83
5. Select the Update Value icon or the Define Profile Values button.
6. Initially, you come to the profile value at the Site level. You are not going to
change the Site value. You are going to change the User level. So, select the
User tab.
84
7. Your user is not yet defined. So, you will need to add it. Select the Add Another
Row button.
8. Type your user, XXX_USER, into the User field, and assign it the value of Yes.
9. Select the Update button to save your setting.
10. Repeat steps 4 9 for the FND: Diagnostics and FND: Personalization Region
Link Enabled profile options.
11. When you are complete, return to the Home Page. Your new Home Page should
look similar to the following:
85
This appears on the page due to the Personalize Self-Service Defn profile option.
These appear on the page due to the FND: Diagnostics profile option.
86
These appear on the page due to the FND: Personalization Region Link Enabled profile
option.
87
88
View the hierarchy in Simple mode. Note that some Reorder and Create
Item icons are disabled (grayed out).
View the hierarchy in Complete mode. Note that the Reorder and Create
Item icons are now enabled.
Select Expand All to see the entire region and item hierarchy of the Expense
Reports page.
89
2. Select the Seeded User Views icon (eyeglasses) to go to the Personalize Views
page.
90
6. Remove the Name, Report Submit Date, and Due Date columns.
7. Set the query criteria to have the Report Date to after 31-Dec-2001.
8. Add another criteria field by setting the Add Another field to Report Date, and
clicking the Add button.
9. Set the new query criteria to have the Report Date to before 01-Jan-2004.
10. Add another criteria field by setting the Add Another field to Report Status, and
clicking the Add button.
91
11. Select the Show table data when all conditions are met radio button.
12. Set the new query criteria to have the Report Status of Paid.
92
93
94
95
16. Note: Selecting and reducing the number of levels, with the Choose Levels
Displayed button, is one of the most important steps you can take to avoid
problems in implementing personalizations. Otherwise, the UI can be too
crowded to avoid unintendedly typing something into the wrong property at the
wrong level.
96
17. Set the Rendered property to false at the Function level and to true at the
Responsibility level.
18. Click the Apply button.
19. Click the Return to Application link.
20. Verify that you can see the tip on your page.
21. Click the Home link on the top of the page.
22. Select the iExpenses responsibility.
23. Verify that your tip does not appear in this responsibility. If your tip appears,
repeat steps 14 21 XXX_iExpenses responsibility.
97
98
13. Personalize your new tip so that it is rendered only at the responsibility level for
your responsibility. Use the Choose Levels Displayed button to display only the
Function level and the Responsibility level.
14. Note: Selecting and reducing the number of levels, with the Choose Levels
Displayed button, is one of the most important steps you can take to avoid
problems in implementing personalizations. Otherwise, the UI can be too
crowded to ensure avoiding unintendedly typing something into the wrong
properly at the wrong level.
15. Set the Rendered property to false at the Function level and to true at the
Responsibility level.
16. Click the Apply button.
17. Click the Return to Application link.
18. Verify that you can see the button on your page.
19. Click the Home link on the top of the page.
20. Select the iExpenses responsibility.
21. Verify that your button does not appear in this responsibility. If your button
appears, repeat steps 12 19 on your XXX_iExpenses responsibility.
99
100
101
102
6. Show the Business Component References Details just below the Page
Definition table.
7. Scroll down to the View Objects table and find the information for the
TrackExpenseReportsVO. Select the link.
8. Scroll down past the query to the Attributes table, and determine what column
you would like to add to the table. For this task we will add CurrencyCode to
the table. Note the exact attribute name including case, as we will need it later in
this lab.
103
9. Select the Return to About Page link in the lower left corner of the screen.
10. Select Return to Page: Expenses Home link.
104
105
18. Verify that the new XXX Currency Code is in your table.
19. Return to the Personal Home Page, switch responsibilities to the iExpenses
responsibility, and return to the Expenses Home page. Verify that your XXX
Currency Code column does not appear in the iExpenses responsibility.
20. Return to your XXX_iExpenses responsibility.
106
107
108
14. Verify that your privacy statement is now personalized, but only for your
responsibility. Switch to another responsibility and check the Privacy links.
109
110
111
112
6. Before it lets you delete a personalization, it checks ones last time to ensure that
you intend to delete. Select the Yes button to continue with the deletion.
113
114
115
Lab 5
116
117
4. Select the About this Page link to determine if there is a flexfield available on
this page, and note its name and application short name. In our case, the
Application Short Name is PO, and the flexfield name is
PO_REQUISITION_LINES.
118
4. Close the Descriptive Flexfield Register form, and open the Descriptive
Flexfield Segments form, (N) Flexfields > Descriptive > Segments.
5. Query the Descriptive Flexfield Segments by Title using Requisition Lines.
119
120
8. Select the Global Data Elements code, and then click the Segments button.
121
122
21. Close the Descriptive Flexfield Segments windows, back to the main form.
22. Check the Freeze Flexfield Definition checkbox.
23. Select OK for the warning message.
25. When the flexfield is compiled successfully, you will get a Note window to notify
you.
123
124
125
11. You should see the two flexfield columns appearing at the end of the page in the
Additional Information region.
Note:: There is one technique of interest to both instructors and students. Often
times when dealing with OA Framework pages, there are interesting quirks that
might or might not appear. Things like menu items not appearing, responsibilities not
appearing, and the like. Why? Because Oracle Application Framework has a cache
of run-time information, and by default that cache only gets reloaded every 15
minutes. So, here is the technique to clear the cache quicker.
1. From the SYSADMIN user, or any user in the Application that has the
Functional Administrator responsibility, choose the Functional Administrator
responsibility from the Personal Home Page.
2. Choose the Core Service tab.
3. Choose the Caching Framework subtab.
126
If the problem was due to an Oracle Application Framework caching problem, you
have now flushed the cache. Any item now required will be loaded on demand
because it is no longer in the cache. Your quirk should go away.
127
128
129
130
131
132
Lab 6
133
134
g. Click the Test button. Make sure the Status: shows as Success. If not, check
your settings (above), and repeat until Success is shown.
h. Click the Save button.
135
i.
136
137
10. What is the name of one (1) function in the JDR_UTILS package?
_________________________
11. Open the Tables folder.
12. Run the following SQL Statement
SELECT USER_NAME
FROM FND_USER
13. Find the FND_USER table in the Tables folder that you opened in Step 11.
14. Why is the table not listed?
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
______________________________________________________________
15. Open the Other Users folder.
16. Select the APPLSYS user.
17. Select the Table folder under the APPLSYS user.
18. How many columns are in the FND_USER table?
_________________________
138
139
Solution Task 2
1. Run the following SQL Statement
SELECT COUNT(*)
FROM sys.dba_objects
WHERE UPPER(object_name) NOT LIKE 'BIN$%'
2. How many objects are in your E-Business Suite database?
Approximately 364,909 (this will vary depending upon the patches that have been
applied to an E-Business Suite instance.)
3. Run the following SQL Statement
SELECT object_type "Object Type",
COUNT(*) "Object Count"
FROM sys.dba_objects
WHERE UPPER(object_name) NOT LIKE 'BIN$%'
GROUP BY object_type
ORDER BY 1
4. How many tables are in your E-Business Suite database?
Approximately 32,426
5. Expand the Connection (for example, VX0321).
6. View the Table of your choice.
7. Open the Packages folder.
8. View the JDR_UTILS package.
9. What is the name of one (1) procedure in the JDR_UTILS package?
deleteDocument, deleteEmptyCustomizations, deletePackage, listContents,
listCustomizations, listDocuments, listLanguages, printDocument,
printTranslations, saveTranslations
140
10. What is the name of one (1) function in the JDR_UTILS package?
exportDocument, getComponentName, getDocumentName, getTranslations
11. Open the Tables folder.
12. Run the following SQL Statement
SELECT USER_NAME
FROM FND_USER
13. Find the FND_USER table in the Tables folder that you opened in Step 11.
14. Why is the table not listed?
It is not there because you are logged in to the database as APPS. The
FND_USER table is owned by APPLSYS. The reason that you can see it
as the APPS user is because a synonym exists in the APPS schema to the
APPLSYS object.
15. Open the Other Users folder.
16. Select the APPLSYS user.
17. Select the Table folder under the APPLSYS user.
18. How many columns are in the FND_USER table?
28 columns
141
Solution Task 3
1. Start-up the NX Client, and connect to your server.
2. Login as nxuser1 with a password of oracle.
3. Open a terminal window.
4. Change (su) to the oracle user. The oracle user password is oracle.
su - oracle
5. Navigate to the ORACLE_HOME directory (/app/db_st/10.2.0.2).
cd /app/db_st/10.2.0.2
6. Run the database ORACLE_HOME environment file for your E-Business Suite
instance.
. VX0321_vx0321.env
Note: The above command will change based on the server and SID that you
have been assigned. The above command assumes that you have been
assigned the VX0321 SID on the vx0321 server.
7. Navigate to the database ORACLE_HOME/appsutil/scripts/<context
name> directory.
cd $ORACLE_HOME/appsutil/scripts/VX0321_vx0321
Note: The above command will change based on the server and SID that you
have been assigned. The above command assumes that you have been
assigned the VX0321 SID on the vx0321 server.
8. List the files in this directory.
ls
Note: You should see the following scripts/files listed in the directory.
adautocfg.sh
adddbctl.sh
adexecsql.sh
adpreclone.pl
142
adstrtdb.sql
adchknls.pl
addlnctl.sh
adlsnodes.sh
adstopdb.sql
9. Stop the database using the addbctl.sh script.
The file header for each script contains instructions on how to run the script.
. addbctl.sh stop immediate
10. Restart the database.
. addbctl.sh start
11. Examine the format of the Net Services listener process script and, if time
permits, use it to stop and start the listener.
. addlnctl.sh status VX0321
. addlnctl.sh stop VX0321
. addlnctl.sh start VX0321
Note: The above commands will change based on the SID that you have been
assigned. The above command assumes that you have been assigned the
VX0321 SID.
143
Lab 7
144
145
146
147
Lab 8
148
149
150
151
Lab 9
152
153
154
echo $AD_TOP/bin
/appltop/apps/apps_st/appl/ad/12.0.0/bin
echo $PATH
/app/tech_st/10.1.3/perl/bin:/appltop/apps/tech_st/10.1.2/b
in:/appltop/apps/apps_st/appl/fnd/12.0.0/bin:/appltop/apps/
apps_st/appl/ad/12.0.0/bin:/appltop/apps/apps_st/comn/util/
jdk/jre/bin:/appltop/apps/apps_st/comn/util/unzip/unzip/unz
ip5.50::/appltop/apps/tech_st/10.1.2/bin:/usr/bin:/usr/ccs/bi
n:/usr/sbin:/app/tech_st/10.1.3/perl/bin:/appltop/apps/tech
_st/10.1.2/bin:/appltop/apps/apps_st/comn/util/jdk/jre/bin:
/appltop/apps/apps_st/comn/util/unzip/unzip/unzip5.50:/appltop/apps/tech_st/10.1.2/bin:/usr/bin:/usr/ccs/bin
:/usr/sbin:/zeus/perlbin:/perl/bin:/vmware/bin:/special/bin
:/home/ads/bin:/zeus/perlbin:/perl/bin:/vmware/bin:/special
/bin:/home/ads/bin:/home/ads/bin:/sbin:/zeus/perlbin:/perl/
bin:/vmware/bin:/special/bin:/home/ads/bin:/zeus/perlbin:/p
erl/bin:/vmware/bin:/special/bin:/home/ads/bin:/home/ads/bi
n:/sbin:/zeus/perlbin:/perl/bin:/vmware/bin:/special/bin:/h
ome/ads/bin:/usr/local/bin:/usr/bin:/usr/sbin:/usr/X11R6/bi
n:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:/usr/lib/mit
/bin:/usr/lib/mit/sbin:/usr/NX/bin:.:/usr/lib/qt3/bin:/apac
he/bin:/usr/lib/heartbeat:.:/apache/bin:/usr/lib/heartbeat:
.:/apache/bin:/usr/lib/heartbeat:.:/apache/bin:/usr/lib/hea
rtbeat:.:/apache/bin:/usr/lib/heartbeat:.:/appltop/apps/app
s_st/comn/util/jdk/bin:/appltop/apps/apps_st/comn/util/jdk/
bin
9. Go to the AD_TOP/bin directory.
cd $AD_TOP/bin
155
adaimgr
adcfginfo.sh
adchkcfg.sh
adchkdig
adchkutl.sh
adclone.sh
adconfig.sh
adctrl
adcvm.sh
addefgen
adrelink
adpatch
adsplice
adworker
156
Lab 10
157
158
4. Select the Personalize icon on the Page Layout: Expenses Home item in the
Personalization Structure.
159
5. Change the Title at the Site level from Inherit to Expenses Home (Personalized).
6. Select the Apply button.
7. Scroll to the bottom of the page.
8. Select the Return to Application link.
160
161
1. Run Putty.
162
163
164
165
4. Drill-down to the page that is being used for this demo. Choose
/oracle/apps/ap/oie/webui/customizations/site/0/HomePG.
5. Select the HomePG item in the structure.
6. Click Export to File System button to export the personalization document to the
file system. As the Personalization Document Root Path is set to
/home/nxuser1/instructor1 folder, the personalization document will be exported
to this folder.
166
167
168
more HomePG.xml
3. Edit the personalization. Type the following commands:
vi HomePG.xml.
Use the arrow keys to move to the point in the
personalization file that reads (Personalized). Move the
cursor to be on the last parenthesis ). This should be line
4, column 71 of the file.
Press the i key.
Type <space>2. So, the file should read (Pesonalized 2).
Press the ESCape key.
Type :wq to exit vi and save your edits.
4. Confirm your edits. Type the command, more HomePG.xml.
5. You can exit the putty session.
169
170
171
10. Confirm that the newly imported personalization is in place. Note: In order to see
the newly imported personalization, you may to clear the Global Cache which
you do from the Functional Administrator > Core Services > Caching Framework
> Global Configuration page.
172
Lab 11
173
Pre-requisites:
1. Login to the course server as SYSADMIN/SYSADMIN, use the System
Administrator responsibility, and add two responsibilities to the FWKTESTER
user.
Drag-and-drop the QuerySolution.zip file from the left panel (Local) to the
right panel (Server) directory.
j.
174
175
/appltop/apps/apps_st/appl/APPSVX0321_vx0321.env
./adstpall.sh apps/apps
./adstrtal.sh apps/apps
176
177
178
/appltop/apps/apps_st/appl/APPSVX0321_vx0321.env
./adstpall.sh apps/apps
./adstrtal.sh apps/apps
179
180
181
182
183
11. Currently, the only document in the MDS in the path of the
/oracle/apps/ak/solution path is QueryPG.
Note: For this example, there is only one (1) document. This is probably not the
case for an actual deployment. The LISTCONTENTS procedure will show
multiple documents, including PGs, RNs, personalizations, and BC4J
substitutions.
12. Right-click the JDR_UTILS package, and choose Run from the context menu.
13. Choose DELETEDOCUMENT from the Run PL/SQL window.
14. Edit the P_DOCUMENT variable to the complete path of the document you want
to delete from the MDS. For this example, that will be
/oracle/apps/ak/solution/employee/webui/QueryPG.
184
16. You should see that your document was deleted successfully.
17. In addition to the QueryPG, there should also be an EmpNameLovRN in the
MDS. Delete that document using the same process.
185
Lab 12
186
OA Framework Administrator
Menu
Personalizations (Tab 1)
Applications Catalog (Subtab 1)
Import Personalizations (Subtab 2)
Export Personalizations (Subtab 3)
Administration (Tab 2)
Profiles (Tab 1)
Messages (Tab 2)
Menus (Tab 3)
Functions (Tab 4)
Note: The Lab shows an example using existing OA Framework pages. The
process is no different for new OA Framework pages, except you would have to
Deploy the page (see the Lab Deploying Extensions for details).
187
188
12. Click the Expand All link. You should see something similar to the following:
13. This is the structure of the Functional Administrator menu. The top-level of every
that will appear on the Personal Home Page is of the type, STANDARD. In this
case, it is the FND_FUNC_ADMIN_ROOT menu.
14. The next item is the type, HOMEPAGE. It is the menu that you actually see when
you see the entire menu. It is FND_FUNC_ADMIN_MENU.
15. A menu you might not have anticipated is the
ICX_STANDARD_GLOBAL_MENU, and it provides the standard buttons and
icons on every OA Framework page. You will need to add this to you menu.
16. From there, items are TABs, SUBTABs, SIDEBARs, or JSPs. JSPs are the
individual OA Framework pages.
189
17. The individual pages (functions) you need to add to your menu are as follows:
Applications Catalog
Import Personalizations
Export Personalizations
Clear Global Cache
Profiles
Messages
Menus
Functions
Personalizations Search
Personalization Documents Import
Personalization Documents Delete and Export
Cache Component Global Configuration Page
Profile Administration
Maintain Messages
Menu Search
Menu Details
Function Search
Function Details
Note: Something that may be unexpected is the two (2) functions for menus and
functions. While you only have one (1) page directly on the menu, the other page
is accessible from the first. The way that E-Business Suite security functions is
that the page (function) must be on the menu in order for the user to access that
page. So, even though the page is not seen on the menu, it is included on the
menu for security purposes.
18. You now have enough information to implement your menu.
190
191
192
193
194
j.
195
27. Click the Hierarchy of Children tab. Your page should look similar to the
following:
28. Click the Home link at the top of the page, and return to the Personal Home
Page.
196
197
icon to insert.
198
Note: You may encounter a special quirk with the E-Business Suite, and you
should be aware of it and how to remedy it. When menus are created in the EBusiness Suite, a special Security Compilation process is started to compile the
menu into a useable object. Sometimes, when you create menus in Functional
Administrator (an OA Framework-based page), the compilation process doesnt
kick off immediately. This will become especially apparent when you make
multiple changes and save those changes to a menu. Depending upon the server
configuration, it can take up to an hour or more for compilation to succeed.
But, there is a work-around. Use the System Administrator responsibility, and
navigate to Application > Menu. Query your menu. Delete an item from the menu,
and save it. When you do, the compilation process will start immediately. Add the
item you just deleted back to the menu, and save again. Watch the concurrent
request until it is finished. Your menu should now be in good working order.
199
Lab 13
200
201
202
Please note that the page full path, name and other OA References are available
directly from the About this page link on each page. The About this Page link
is displayed in diagnostics mode only.
In JDeveloper in ExtendProject.jpr, choose PoSummaryCreatePG.xml.
Examine its page structure and properties in the Property Inspector. An easy way
to analyze your page is to review the corresponding OA References window. To
show the OA References window for a page or a region, right-click the
PoSummaryCreatePG in the Structure pane and choose Show OA
References.
PoSummaryCreatePG contains an OrdersRN region under the PageLayoutRN
region. The OrdersRN region extends
/oracle/apps/fnd/framework/toolbox/tutorial/webui/PoSummaryRN as
indicated in the Extends property in the Property Inspector. The items under the
OrdersRN are grayed out because they inherit properties from the base region
that cannot be modified indirectly.
Choose PoSummaryRN.xml from the Navigator pane. The PoSummaryRN
region is a shared region that can be extended and reused by other pages and
Copyright Oracle Corporation, 2007. All rights reserved.
203
regions. PoSummaryRN contains an OrdersTable region. Note that all the items
under this region have the View Instance property set to PoSummaryVO1. Also
note that the Application Module Definition Name property is set only at the top
level (PoSummaryRN) to
oracle.apps.fnd.framework.toolbox.tutorial.server.PoSummaryAM.
Note again that you can analyze the PoSummaryRN through the OA
References window. To show the OA References window for a page or a region,
right-click the object in the Structure pane and choose Show OA References.
Please see Figures 8 and 9 for an example of the OA References and BC4J
Wizards screens.
Based on this analysis, we know that we need to extend the
oracle.apps.fnd.framework.toolbox.tutorial.server.PoSummaryVO to
204
13. Click the Test button, and successfully test your SQL statement.
14. Click the Next button.
15. Click the Next button on the Bind Variables page.
Copyright Oracle Corporation, 2007. All rights reserved.
205
16. On the Java section, uncheck the View Object Class - Generate Java File
checkbox.
17. Check the View Row Class - Generate Java File and Generate Accessors
checkboxes.
18. Click the Finish button.
206
<ViewAttribute
Name="SupplierSiteId"
IsUpdateable="false"
IsPersistent="false"
Type="oracle.jbo.domain.Number"
ColumnType="NUMBER"
AliasName="SUPPLIER_SITE_ID"
SQLType="NUMERIC" >
</ViewAttribute>
<ViewAttribute
Name="SiteName"
IsSelected="false"
IsPersistent="false"
Precision="255"
Type="java.lang.String"
ColumnType="VARCHAR2"
AliasName="SITENAME"
SQLType="VARCHAR" >
</ViewAttribute>
Replace it with the following correct XML.
<ViewAttribute
Name="SupplierSiteId"
IsUpdateable="false"
EntityAttrName="SupplierSiteId"
EntityUsage="SupplierSiteEO"
AliasName="SUPPLIER_SITE_ID" >
</ViewAttribute>
<ViewAttribute
Name="SiteName"
IsUpdateable="false"
EntityAttrName="SiteName"
EntityUsage="SupplierSiteEO"
AliasName="SITE_NAME" >
</ViewAttribute>
10. Choose (Menu) File > Save, or press Ctrl+S.
11. Choose (Menu) File > Quit, or press Ctrl+Q.
12. Restart JDeveloper 10g with OA Extension.
13. Double-click <Your Name>PoSummaryVO.
14. Choose Attribute Mappings, and scroll to the bottom of the list.
207
15. You will note that SupplierSiteId and SiteName in the query column are not
designated as (Transient). If they are, you did not edit the proper file, or save
your changes.
replace.
4. From the Substitute list, select the extended object oracle.apps.ak.<your
name>.extend.server.<YourName>PoSummaryVO) that you want as the
substitute.
5. Click the Add button. A new substitution rule will be added in the Substitutions list
box.
6. Click the Run/Debug category in the Project Properties.
7. Click the Edit button.
8. Add the following to the java Options field:
-Djbo.project=ExtendProject
Be sure to put a space before any existing options and adding this option.
Note: If you forget to add this jbo.project Java option, you will get exceptions like
"oracle.apps.fnd.framework.OAException: oracle.jbo.NoDefException: JBO25002: Definition SiteName of type Attribute not found". The reason is that the
runtime environment does not pick up substitution rules, and hence BC4J tries to
find the new attribute from the base object and not the extended object.
9. Click the OK button.
10. Click the OK button.
11. Save your work.
208
4. In the Personalize Page page, check the Complete View radio button for the
Personalization Structure. Expand the Stack Layout: Purchase Order Summary
Region node, locate the Table: Purchase Orders Table entry in the page
hierarchy and select the Create Item icon.
5. In the Create Item page:
a. Set the Item Style to Message Styled Text.
b. Set the ID to SiteName.
c. Set the Prompt to Supplier Site
d. Set the View Attribute to SiteName
e. Set the View Instance to PoSummaryVO1
f. Select the Apply button
209
6. Locate the Table: Purchase Orders Table entry again and select the Reorder
icon.
7. In the Reorder Contents of Table page's Site list, move the Supplier Site item to
be sequenced immediately after the Supplier item.
8. Select the Apply button.
9. Select the Return to Application link. Now you should see the Supplier Site
column added to the Orders Table.
Note: We set the View Instance to PoSummaryVO1 and not
<Your Name>PoSummaryVO1. The BC4J substitution will take care of properly
creating an instance of <Your Name>PoSummaryVO1 at runtime in place of the
PoSummaryVO1.
210
Lab 14
211
3. Click the About this Page link, and analyze the page.
4. The XML file for the Purchase Orders create page - step 1 is
/oracle/apps/fnd/framework/toolbox/tutorial/webui/PoDescPG.xml.
5. In your ExtendProject, select PoDescPG.xml and examine its page structure and
properties in the Property Inspector. An easy way to analyze your page is to
review the corresponding OA References window. To show the OA References
window for a page or a region, right-click the object in the Structure pane and
choose Show OA References.
PoDescPG contains a MainRN region under the PageLayoutRN region. Note
that all the items under this region have the View Instance property set to
PoDetailsFullVO1. That is also obvious from the OA References window.
212
213
/**
* Initializes a new purchase order header.
*/
public void create(AttributeList attributeList)
{
super.create(attributeList);
// Add or change the default values here.
setPaymentTermsCode("NET_60");
}
Note: The create method is invoked when the Entity Object is created. You set
default values in this method. Also note that you should call the
super.create(attributeList) method before adding your custom defaulting logic.
214
You must edit the PurchaseOrderHeaderEOImpl.java file, and remove the offending
code from the following methods:
setStatusCode
setHeaderId
setBuyerId
setPaymentTermsCode
setCarrierCode
setCurrencyCode
1. Edit each method, and remove all the code from the method, except for one (1)
line. Your method code should look similar to the following:
{
setAttributeInternal(STATUSCODE, value);
} // end setStatusCode()
2. Each method will vary slightly. But, you will see the setAttributeInternal method
call in each of the methods.
3. Save your work.
4. Rebuild ExtendProject, and resolve any errors.
215
216
Note: There is an unusual error that occurs on this page that bears some
discussion. In the standards for OA Framework BC4J items, the items are limited to
30 characters. If you put in the longer name and run the page, the Payment Terms
item will not default. But, no error message will be generated. It is ONLY when you
run the page in the Debugger that you will see and generate an error message. The
error message will tell you that the identifier is too long. In other words, you have
exceeded the 30-character limit.
217
Lab 15
218
219
6. If you expand the Business Component References Details section, you will note
the DetailsVO uses FwkTbxEmployeesEO (in
oracle.apps.ak.solution.schema.server package), which includes the
attribute Salary. Defaulting or validation logic goes into the Entity Object Java
class instead of into the View Object Java class. Centralizing the
defaulting/validation logic in the Entity Object layer promotes reuse and sharing
of the business logic.
Based on this analysis, we know that we need to extend the
oracle.apps.ak.solution.schema.server.FwkTbxEmployeesEO to add the
220
2. Add the following code within the public class, and rebuild the project.
public void setSalary(Number value)
{
if (value != null)
{
// Verify value is >= 20800.
if (value.compareTo(20800) < 0)
{
throw new OAAttrValException(OAException.TYP_ENTITY_OBJECT,
getEntityDef().getFullName(),
// EO name
getPrimaryKey(),
// EO PK
"Salary",
// Attribute Name
value,
// Attribute value
"AK",
// Message prod short name
"FWK_CORP_MINIMUM_SALARY"); // Message name
}
}
super.setUnitPrice(value);
}
3. Attribute Level Validation: The attribute setter methods (setSalary) are invoked
when the user-entered values are set in the Entity Object. Note that you want to
execute your custom validation before calling super.setSalary(value) since the
super's method actually sets the new value on the entity object, and you don't
want to do this if the value is invalid.
4. Entity Level Validation: For a single attribute validation, you can override the
attribute setter method as illustrated. If you want to perform cross-attribute
validation, then you need to override the validateEntity() method. For an example,
see the validateEntity() method.
5. Attribute Level Exception vs. Entity Level Exception: For attribute level
exceptions, use OAAttrValException as illustrated. For entity level exceptions,
use OARowValException. For an example of an OARowValException, see the
remove() method.
221
5. Click the Add button. A new substitution rule will be added in the Substitutions list
box.
6. Click the OK button.
222
223
Lab 16
224
Quick Guide:
The following is a Quick Guide to the steps needed to assemble the components for an OA
Framework page.
1. Analyze the page using the About this Page link. Identify all of the following
components:
a. Complete path to PG
b. Complete path to all basic AMs/VOs
c. Complete path to all EOs
d. Applications username, password, and responsibility key
e. Any Controllers on the page
2. Zip the appropriate .class and .xml files (BC4J objects and COs).
3. Download the .zip to the development environment
4. Go to the Development environment
5. Unzip Tutorial.zip into your designated JDEV_USER_HOME as a starting point
6. Unzip the downloaded .zip file with the .class and .xml files to your
JDEV_USER_HOME/myclasses directory
7. export (xmlexporter) the PG into your JDEV_USER_HOME/myprojects directory
8. Launch JDeveloper
9. Create a new OA Workspace and OA Project
a. Add OADiagnostics to the Runtime settings
b. Point your project to the DBC file for your test instance
c. If necessary, download the DBC file from your test instance
$FND_TOP/secure directory
d. Set your project to use the username, password, and responsibility key
identified for the page
10. Add the EOs server.xml to the project, and the AMs/VOs server.xml to the
project. If either of these doesnt exist, log a SR with Oracle Support requesting
this file from Development. You can add the individual components manually, but
it is more time-consuming.
11. Add the COs to the project.
12. Add the PG to the project.
13. Test run the PG, and revise your project until the PG no longer produces errors.
225
Page Name
Any Controllers (COs) associated with the page
Pages Application Module (AM)
Pages View Objects (VOs)
Pages Entity Object (EOs) (if any)
226
___________________________________________________
Controller:
___________________________________________________
AM:
___________________________________________________
VOs:
___________________________________________________
___________________________________________________
___________________________________________________
EOs:
___________________________________________________
227
Page Name:
/oracle/apps/ak/solution/employee/webui/QueryPG
Controller:
ResultsCO
AM:
oracle.apps.ak.solution.employee.server.QueryAM
VO:
oracle.apps.ak.solution.employee.server.QueryVO
oracle.apps.ak.region.server.AkAmParameterRegistryVO
oracle.apps.fnd.framework.server.OADynamicPoplistVO
EO:
oracle.apps.ak.<Your Name>.extend.schema.server.
<Your Name>FwkTbxEmployeesEO
How do you discover the information about the AMs, Controllers, VOs, and EOs? You
have 2 options.
1. Click the Hide/Show icon labeled Business Component References Details, and
you will see the page change to look similar to the following.
228
2. Click the Printable Page button at the top of the About page, and collect all the
expandable information in 1 step. That information looks similar to the following:
When you have collected the information, click the Return to Page: Employees: Solution
link at the bottom of the About page.
229
cd ../..
mkdir myprojects
mkdir myclasses
230
2. Beneath both the myprojects and myclasses directories, create the following
structure.
myprojects/myclasses
- oracle
- apps
- ak
- solution
- employee
- server
- webui
- schema
- server
mkdir p myprojects/oracle/apps/ak/solution/employee/server
mkdir p myprojects/oracle/apps/ak/solution/employee/webui
mkdir p myprojects/oracle/apps/ak/solution/schema/server
mkdir p myclasses/oracle/apps/ak/solution/employee/server
mkdir p myclasses/oracle/apps/ak/solution/employee/webui
mkdir p myclasses/oracle/apps/ak/solution/schema/server
Step 2.3: Move the MDS Related Components
In Framework pages and applications, there are three (3) kinds of components stored in
the MDS.
1. Pages
2. Personalizations
3. BC4J Substitutions
Assume you have used the export command to download the page from the MDS.
Assume that it is in the file system of your server. You now need to move the file from
the server (which is going to be your old JDEV_USER_HOME directory) to your
Development machine (which is your new JDEV_USER_HOME directory).
cp <from> <to>
From: /home/nxuser1/jdevhome/jdev/myprojects/oracle/apps/ak/
solution/employee/webui/QueryPG.xml
To: /home/nxuser1/jdevhome2/jdev/myprojects/oracle/apps/ak/
solution/employee/webui/QueryPG.xml
Copyright Oracle Corporation, 2007. All rights reserved.
231
<name>AM.xml
<name>AMImpl.class
<name>VO.xml
<name>VORowImpl.class
<name>VOImpl.class (dependent file)
---see note below--<name>CO.class
About EOs and related objects: In the About this Page info, only directly related EOs
(i.e., those EOs directly associated with VOs) will be shown in the diagnostic summary.
However, there can be numerous other files at the EO-layer of Framework that need to
be present in order for the page to run. These include files like the following:
When you are downloading files from the server, it is best to grab everything related to
the EO. You might grab some unneeded files, but it will save you time and frustration in
the long run.
By naming standards, EO-layer objects are kept in the ./schema/server path. So,
in our example, we would want to move ALL the objects as follows:
From: /home/nxuser1/jdevhome/jdev/myclasses/oracle/apps/ak/
solution/schema/server/
To:
/home/nxuser1/jdevhome2/jdev/myclasses/oracle/apps/ak/
solution/schema/server/
1. Copy the Controller files:
From:
/home/nxuser1/jdevhome/jdev/myclasses/oracle/
apps/ak/solution/employee/webui/ResultsCO.class
To:
/home/nxuser1/jdevhome2/jdev/myclasses/oracle/
apps/ak/solution/employee/webui/ResultsCO.class
232
/home/nxuser1/jdevhome/jdev/myclasses/oracle/
apps/ak/solution/employee/server/QueryAM*.*
To:
/home/nxuser1/jdevhome2/jdev/myclasses/oracle/
apps/ak/solution/employee/server/
/home/nxuser1/jdevhome/jdev/myclasses/oracle/
apps/ak/solution/employee/server/QueryVO*.*
To:
/home/nxuser1/jdevhome2/jdev/myclasses/oracle/
apps/ak/solution/employee/server/
/home/nxuser1/jdevhome/jdev/myclasses/oracle/
apps/ak/solution/schema/server/*.*
To:
/home/nxuser1/jdevhome2/jdev/myclasses/oracle/
apps/ak/solution/schema/server/*.*
Note: When you copy all the EO-layer files, you will also copy over some
configuration files used by JDeveloper. These files would not be stored on the
actual server, and are therefore unnecessary. Delete them if you like to ensure
that they are not needed. JDeveloper will recreate these files if they are not
present.
Step 2.5: Start JDeveloper and Test
1. Start JDeveloper.
2. Create a new OA Workspace. Give it the File Name, AssemblySpace.
3. Create a new OA Project. Give it the Project Name, AssemblyLab. The default
package should be oracle.apps.ak.solution.
4. Make certain to use the proper DBC file associated with your server.
5. Set the password for FWKTESTER to FWKDEV (or your setting).
6. Finish creating the workspace and project.
7. Your View-layer object (QueryPG) will automatically be added to the project.
8. Run QueryPG to test.
9. You will get an error message. You will also get some compilation warnings.
233
10. Examine the error message closely, and you will see that it states the following:
Unable to find component with absolute reference =
/oracle/apps/ak/solution/lov/webui/EmpNameLovRN
11. In assembling the components, it was not obvious from the About this Page that
the page contained an LOV. So, it was not assembled as part of our
development copy.
Step 2.6: Fix the Missing LOV
1. Exit JDeveloper.
2. Open a terminal window.
3. Create the directory structures for your LOV files.
mkdir p myprojects/oracle/apps/ak/solution/lov/webui
mkdir p myclasses/oracle/apps/ak/solution/lov/webui
4. Copy the LOV files:
From:
/home/nxuser1/jdevhome/jdev/myprojects/oracle/
apps/ak/solution/lov/webui/*.*
To:
/home/nxuser1/jdevhome2/jdev/myprojects/oracle/
apps/ak/solution/lov/webui/
234
235
Supplemental Lab 1
236
1. Log into Oracle Applications with user name SYSADMIN and password
SYSADMIN. Your instructor will provide you with the URL to login to the
E-Business Suite instance assigned to your class.
2. Select the System Administrator responsibility.
3. Select Security: Responsibility > Define from the Navigator.
4. Create a new Responsibility with the following values. Replace XXX with your
terminal number as noted above.
Application: Payables
237
238
239
240
Create your own username that you will use for most of the following labs. Navigate to
Security: User > Define.
1. Create a new user with the following values.
Person: Stock, Ms. Pat (Note: To put this Person into the field, type Stock
into the field, and then press the TAB key. A pop-up will open allowing you to
select Pat Stock. There may be several Pat Stocks in the instance. You need
to select the one that is employee number 24. Accept the error/warning you
get when associating Pat with your new user because this person is
associated with several user names.)
Application Developer
Functional Administrator
Copyright Oracle Corporation, 2007. All rights reserved.
241
System Administrator
System Administration
Preferences SSWA
XXX_iExpenses
iExpenses
iProcurement
XXX iProcurement
242
4. Use your new login and password (WELCOME) to log in again. You will be
prompted to change your password.
_________________________________
243
244
3. Navigate to the Expense Reports page, and select the Expense Reports subtab.
245
Select the Show table data when all conditions are met radio button.
Enter criteria for the Report Date field. Set the drop-down box as before.
Set the date as 31-Dec-2000.
246
247
5. Note which columns are present in the table, and how many rows the table
displays.
6. Select the Save Search button to begin the User Personalization UI.
248
7. Set the View Name to XXX Reports before Dec. 31, 2000.
8. Set the Number of Rows Displayed to 25 Rows.
9. Remove the Report Submit Date and the Report Status columns. (Note: You
cant reorder the columns in the Expense Reports page, and you cant remove
certain columns.)
10. Select the Rename Columns/Totaling button. Change the name of the Name
column to Submitter Name.
249
250
251
5. Set the Add Another field to Report Date, and click the Add button.
6. Set the new Report Date to before 01-Jan-2003.
7. Select the Apply and View Results button.
8. You should see your results in your new layout.
252
253
Supplemental Lab 2
254
Application: Sales
Menu: ASN_MAIN_MENU
255
256
3. Examine the original layout of the Sales Dashboard. Take note of the location of
the Sales Funnel and other regions.
4. Select the Personalize Page link. This page has been built as a configurable
page, so it has a different personalization UI than other pages. It displays two
subtabs, Layout and Content. It also presents a graphical view of the page
hierarchy of regions (containers) in the Layout subtab.
5. Verify that you see the XXX Sales User responsibility for the Personalization
Level field.
257
258
6. The Content subtab shows the arrangement of fields and other page content.
259
260
9. Change the order of the Sales Funnel and the Calendar & Tasks region by
clicking on the reorder icon. Move Calendar and Tasks before Sales Funnel at
the Responsibility level.
11. Remove the Shortcuts and Latest Submitted Forecast region from the layout
by clicking on the remove icon on that region. When you do, you will receive a
delete warning page.
261
12. When you removed the Shortcuts and Latest Submitted Forecast region from
the page, you encountered a quirk of the configurable page layout. Notice that
the Calendar & Tasks and Sales Funnel region has reverted to vertical layout.
Just prior to region removal, the region was in horizontal layout. Also, the parent
container region for Calendar/Funnel and Shortcuts/Forecasts was removed.
Change the Calendar & Tasks and Sales Funnel region back to horizontal
layout.
13. Add a column to the parent container by clicking on the Add Column icon. When
you add the column, it is in the layout, but it does not yet have any contents. You
will do that from the Content subtab.
262
263
15. Add content to your newly added column by clicking the Add Content icon on
the region where you want to add that content.
264
16. You only have 2 choices of predefined content that is not already on the page,
Top Customers and Top Opportunities. Add both to the region.
265
18. Add a border around a container by selecting the Personalize icon (pencil) for
the container and setting the Flexible Content: Sales Funnels personalization
properties. Set the Show Border property to true.
266
20. Select the Return to Application link. NOTE: You may need to click the
browsers RELOAD PAGE icon to get the page to display properly.
21. Verify that the page looks similar to the changes shown.
267
Supplemental Lab 3
268
4. Select the Continue button on the Change Hours: Effective Date Options
page to skip through it.
5. On the Change Hours: Work Schedule page, verify that you can enter the
Work Hours field and change its value. This is the starting state.
6. Select the Personalize Page link.
7. Find the Message Text Input: Work Hours item.
8. Select the Personalize icon.
9. Select the Choose Levels Displayed button.
10. Select only the Responsibility level to be displayed.
11. Click the Apply button.
12. Personalize the Read Only property by selecting SPEL from the dropdown list of
values. Then type in the following expression: (Note: Replace XXX with your
student number.)
Copyright Oracle Corporation, 2007. All rights reserved.
269
${oa.FunctionSecurity.XXXWORKHOURSREADONLY}
13. Click the Apply button.
14. Select the Return to Application link.
15. Verify the Work Hours field should be shown as a read-only field. This is the
read only state (the user does not have access to the function you specified).
270
271
272
273
274
275
35. Return to the Expenses Home page and look at your new region.
276
277
278