Download July/August 1999 - Dallas Oracle Users Group

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Security and safety features new to Windows Vista wikipedia , lookup

Transcript
July/August 1999
Issue #10
Thursday, July 15
4:00 - 6:00 p.m.
DOUG Meeting
New Features of the Developer Suite
(Erol Coner, Oracle Corporation)
Thursday, August 19
4:00 - 6:00 p.m.
DOUG Meeting
Creating Custom Account Generators - The Fast and Easy Way!
(Jason Chan, i2 Technologies)
Location
Oracle Corporation
222 W. Las Colinas Blvd., 10th Floor
Irving, Texas 75039
972-401-5800
System and Process Review
System Administration Support
Database and Application Installations and Upgrades
Database Backup and Recovery Review and Implementation
Remote Database Support
Database and Application Performance Tuning
Application Implementation
Oracle Training
Computer Systems Authority (CSA) is a consulting services firm. Our vision is "to be recognized by our
clients as the premier provider of real world solutions to their information systems integration challenges."
CSA strives to provide the best quality solutions to our clients using the best quality personnel. Contact us at
972.960.0180 to find out what CSA can do for you.
DALLAS ORACLE USER GROUP
What I Did on My First Day of School
Andrew Iwanuck, DBCORP
Allow me to introduce myself. After all, it’s my first day on the job. I am a wanna-be DBA. I am such a new DBA,
I’m still shrink-wrapped and shiny. I got hooked on database administration because of some brief exposure to it
during a company upgrade and conversion. No, this doesn’t mean I’m Queen of Nerd-City, or CEO of Geek Central. But, nonetheless, I dusted off my pocket protector, oiled the propeller on my hat and applied for a job at a DBA
consulting company.
Monday 7:30 a.m. – Bleary-eyed, I fumble with the office key, and let myself into the reception area; my heart barely
beating, and in dire need of full-metal-jacket caffeine. A kind woman from down the hall shows me the lay of the
land. I take note of the washroom location and foosball table. I admire the golf memorabilia in the reception area.
There are some abstract pictures of Greg Norman, and a clock with embossed golf balls where the numbers should
be. I hang my coat and make my way to the Hub, the bunker, the place where bad things come in, and good things
go out. This is where the client help desk calls are received. They frighten me, the DBAs that inhabit this place;
they are alert, yes, even ‘jazzed’at the prospect of problem-solving. While having visions of surrendering my firstborn or sacrificing a chicken, I scan the walls for pictures of Sun Yong Moon. All I see is more golf posters. I drink
a sufficient amount of coffee to raise my heartbeat to ‘not-quite-dead-yet’pace, and find a place in front of a PC.
9:45 a.m. – I have had so much coffee, I can feel my hair growing. I am not alone. The natives here live on a
steady diet of coffee and cola. Make no mistake; their bodies are temples. They are a collection of skiers, golfers,
bikers, hikers, and runners. But it is the coffee and tea that pumps the creative juices in this office. It’s the kilo of
gummy bears that promotes flashes of brilliance and innovation. I load up on both.
1:15 p.m. – To ensure I don’t injure myself or anyone else’s database, I am at first given a stand-alone server to
blow up at will. What a run-of-the-mill DBA can do in one hour takes me 2 days. Throughout my attempts at
database creation, the server continues to spit errors at me, taunting me until I want to beat it with a baseball bat.
Did I say that out loud?
4:30 p.m. - My brain has long since hit saturation point by the end of the day. I stumble out to the bus and go
home.
Tuesday 7:05 a.m. - Initialization parameters have swam through my already confused dreams during the night and
I wake up with the urge to shutdown and startup my blowdryer. I stand in front of the mirror, wondering how to reboot my toothbrush, because that might fix everything. Later, at the office, after several (more than 10) attempts at
creating a small database, I have moderate success. I give myself a virtual high-five and feel better about going
down the hall to play with the other kids.
2:00 p.m. – Hub room. The DBAs have switched from gummy bears to some foul-smelling deep fried cheese
things. I disapprove but eat them anyway. There is a sense of comfort there; ghetto-blaster in the corner, bookshelves full of manuals, spontaneous brainstorming sessions erupting at the utterance of a simple question.
I would suggest that not everyone has the right attitude to be a DBA. The ability to dispense calm and clarity, as well
as database expertise to the client after their database has crumbled around them is an important personality trait.
DBA responses to clients like. “Lock the doors for a couple of days, Sparky. You’re hooped.” often result in sporadic
changes in career path. Client relations is truly one area where I’ve seen and heard these guys work their magic.
The phrase “Trust me, I’m a doctor” springs to mind.
4:30 p.m. – Another day, another brush with database comprehension. I wrote my first successful script over six
lines long. My synapses perform dances in the end-zone of my cerebral cortex. I’m convinced it’s the gummy bears
that assisted my small revelation, and I am excited at the prospect of what jelly-beans can do for me.
Dallas Oracle User Group
32
DALLAS ORACLE USER GROUP
AOL FREQUENTLY ASKED QUESTIONS
Character: Use \Help->Version
GENERAL AOL
Where do concurrent request logfiles and output
files go?
The concurrent manager first looks for the environment
variable $APPLCSF
If this is set, it creates a path using two other environment variables:
$APPLLOG and $APPLOUT
It places log files in $APPLCSF/$APPLLOG
Output files go in $APPLCSF/$APPLOUT
So for example, if you have this environment set:
$APPLCSF = /u01/appl/common
$APPLLOG = log
$APPLOUT = out
The concurrent manager will place log files in /u01/appl/
common/log, and output files in /u01/appl/common/out
Note that $APPLCSF must be a full, absolute path, and
the other two are directory names.
If $APPLCSF is not set, it places the files under the
product top of the application associated with the request.
So for example, a PO report would go under $PO_TOP/
$APPLLOG and $PO_TOP/$APPLOUT
Logfiles go to: /u01/appl/po/9.0/log
Output files to: /u01/appl/po/9.0/out
Of course, all these directories must exist and have the
correct permissions.
Note that all concurrent requests produce a log file, but
not necessarily an output file.
What are the logfile and output file naming conventions?
Logfiles: l<request id>.req
Output files: If $APPCPNAM is not set:
<username>.<request id>
If $APPCPNAM = REQID: o<request id>.out
If $APPCPNAM = USER:
<username>.out
Where: <request id> = The request id of the concurrent
request
And: <username> = The id of the user that submitted
the request
How do I check if Multi-org is installed?
SELECT multi_org_flag FROM fnd_product_groups;
How do I find out what the currently installed release of Applications is?
SELECT release_name FROM fnd_product_groups
How do I lookup ORA errors? (and TNS errors)
Use: oerr ora XXXX
or: oerr tns XXXX
where XXXX is the error number
(This also supports a number of other error types. Use
the 3-letter error prefix in place of 'ora')
How do I generate a message file (usaeng.msb)?
Use: FNDMDCMF applsys/pwd 0 Y APP usaeng
where: applsys/pwd is the APPLSYS user and password and APP is the short name of the application (like
PO or INV)
How do I submit a concurrent request from PL/
SQL?
Use FND_REQUEST.SUBMIT_REQUEST
Example: req_id :=
FND_REQUEST.SUBMIT_REQUEST('FND',
'FNDSCARU');
Note that this can only be called from a concurrent program
See the Coding Standards for parameter details
How do I cancel a running concurrent request?
Navigate to the Concurrent Request Summary form
Select a request
In character, do a Quickpick on the Status column
You can select Cancel or Hold
In GUI, use the Cancel or Hold buttons
The Sysadmin responsibility can cancel or hold any running request
Why can't I find adrelink on my NT APPL_TOP?
This is a trick question right?
There is no adrelink, we supply executables pre-built.
There is no need to relink
as on UNIX. There is also no adunload.
Why can't I use character mode on NT?
You're just full of trick questions today...
Applications for NT does not include character mode
forms.
Why does Help->Tools->Examine ask for a password?
The profile option Utilities:Diagnostics is set to NO
This profile option controls whether users can use the
Examine utility.
The password should be the APPS password.
How do I find the name of a form?
GUI: Use Help->About Oracle Applications
Scroll down to find the form name
(Continued on page 5)
Dallas Oracle User Group
3
DALLAS ORACLE USER GROUP
ORACLE 8i RELEASE 8.1 NEW FEATURES
by Sandra Cheevers, Oracle Corporation
SUMMARY
Oracle8i, Release 8.1, is the latest release of the Oracle data server. Oracle8i introduces many new, innovative features
specifically designed to make it the database for the Internet. Oracle8i continues Oracle’s strategy of embracing and supporting Java by delivering a Java VM within the Oracle server. Just as Oracle made SQL the language for client server
architectures, Oracle is making Java the standard for next generation applications by supporting Java in all tiers, including
within the server. This brings the support for the Java language to the same level as the support for PL/SQL. Also, new
features such as WebDB make it easy for users and developers to create web-based applications that allow Oracle data
to be accessed through the Internet.
Oracle8i improves upon many of the advances of Release 8.0 as well as introduces powerful new functionality for online
transaction processing (OLTP) and data warehousing applications. Oracle8i also includes enhancements in nearly all
other areas of the Oracle Data Server improving overall quality, availability, performance, manageability, multi-media
datatype support, and replication.
INTERNET COMPUTING
ORACLE WEBDB
Oracle8i introduces Oracle WebDB to make it easy to create web-based Oracle applications. Oracle WebDB is the solution for building, deploying, and proactively monitoring Web database applications and content-driven Web sites. By combining an intuitive, HTML interface with a complete set of robust, browser-based HTML tools, Oracle WebDB allows users
to easily and quickly develop Web database applications. Oracle WebDB is the fastest and easiest way to “Web-enable”
Oracle databases.
Oracle WebDB comes with all the tools necessary to build dynamic Web applications and content-driven Web sites. Applications and Web sites developed using Oracle WebDB are completely contained within the Oracle database. The only
software needed to develop and deploy Oracle WebDB applications is a Web browser. There is no need to install software on every machine being used, no need to use FTP to remotely manage files, and no need to have a complex deployment plan every time a developer fixes a bug and needs to upgrade the deployed system. Oracle WebDB meets the demanding challenges that the Internet has posed to the traditional IT shop – fast application development and simplified application deployment.
ALL YOUR DATA ON THE WEB
Web applications require advanced data management services that support rich datatypes used in Web repository, ecommerce, and other Internet applications. Oracle InterMedia adds the support to enable Oracle8 i to manage multimedia
content both for Internet and traditional applications that need access to image, audio, video, text and location data:
interMedia-Image supports image management within an Oracle8i database and basic manipulation of images, such as
scaling and cropping.
interMedia-Audio manages audio from a variety of sources, including within Oracle8i and from external sources, such as
Web URL sites or specialized servers. interMedia-Audio supports delivery of audio through any streaming server, such as
the RealAudio Server or Oracle Video Server.
interMedia-Video manages video from a variety of sources both within Oracle8i and from external sources, such as Web
URL sites or specialized servers. It also supports delivery of video through any streaming server, such as the RealVideo
Server or Oracle Video Server.
interMedia-Locator supports applications that help users locate information, such as stores, distribution points, and
events, based on their location or their distance from a given address or spatial component. interMedia-Locator fea
tures are fully integrated with Oracle8i and with third-party software vendors that provide products to graphically display the
data, such as GIS systems (geographic information systems).
(Continued on page 6)
Dallas Oracle User Group
4
DALLAS ORACLE USER GROUP
(Continued from page 3)
How do I set the name of the site that shows up
under Help->About Oracle Applications?
Set the profile option 'Site Name'
How do I open a form in query-only mode?
Navigate to the Form Functions form (Application>Function)
Query the particular form and add the parameter
QUERY_ONLY=YES
Not all forms will accept this parameter however.
How do I find the version of an installed product?
(such as Reports, SQL*Net etc.)
One of the easiest ways is to run the product if you
can. Running Reports designer will give you the Reports version, running SQL*Plus will give you its version etc. Another easy way is to launch the Oracle
Installer and look in the installed products on the right
side. It will list all the products installed with their versions. Another way is to look at the .rgs file. This file
is located in $ORACLE_HOME/orainst On UNIX, it
will be called unix.rgs. On the PC, it will be called
Windows.rgs. This file will list all the products installed and their versions. Note though that this file is
not always correct. For example, patching Reports
from 2.5.5.4 to 2.5.5.8 will not show up in this file as
the new version. Running Reports Designer is the
best way of getting the correct version. Also, on
UNIX there is an executable called 'inspdver'. It is located $ORACLE_HOME/orainst. Running it will produce a display of all the installed products. It just pulls
the information from unix.rgs, so it may show the
wronginformation as well.
I just ran AutoInstall successfully, but I don't have
character mode! (on UNIX)
You probably picked 'Server' when asked what type
of installation to do. This choice installs everything
except the character mode forms and executables.
The choice you wanted to pick was 'Standalone'. You
can recreate character mode by unloading the forms
directories regenerating the forms, and relinking aiap.
I changed a profile option, but it doesn't seem to
take effect?
Profile option values are cached, so you need to log
out and back in in order to have the new value take
effect. Switching responsibilities will usually do it too.
How do I generate one single form? (As opposed
to using adadmin to generate them all)
Character mode forms: Use adfrmgen
Usage : adfrmgen filelist=<name of filelist file>
or : adfrmgen product="product shortname(s)"
[filepath="dir-path/filename"]
For example :
adfrmgen filelist=filelist.txt
adfrmgen product="gl" filepath="forms/
GLXSSMTY.inp" (one file)
adfrmgen product="gl" filepath="forms" (entire directory)
adfrmgen product="gl" (entire product)
adfrmgen product="fnd gl" (multiple products)
adfrmgen product="fnd gl" filepath="forms" (entire
directories from multiple products)
GUI forms: use f45gen
Usage : f45gen module=<source file> userid=<Apps
account/password>
output_file=<destination file> module_type=form
batch=yes compile_all=special
Example:
f45gen module=/u16/appl/nca/au/1.0/forms/US/FNDCPMCP.fmb userid=APPS_APPDEMO/APPS
output_file=/u16/appl/nca/fnd/7.5/forms/US/FNDCPMCP.fmx
module_type=form batch=yes compile_all=special
Note that in Release 11, adadmin will allow you to
compile specific forms
What do I do if I am missing an executable from
my APPL_TOP?
Binary executables are created with adrelink.
For example, if addmimp is missing use:
adrelink force=y ranlib=y "ad addmimp"
In Release 11, where do I apply all of these new
patch drivers?
(i.e. where do I apply the c driver, the d driver and
the g driver?)
The 'c' driver is the copy driver. It copies files and relinks executables, similar to the old patch.drv. The 'd'
driver is the database driver. It runs scripts against
the database like the old db driver. The 'g'
driver is new to release 11. It is the generate driver. It
generates forms, reports, and message files. In a
multiple-tier environment, you should apply the copy
driver to all tiers, the database driver to the administration tier, and the generate driver to the forms and
concurrent processing tier. (Some of these may be
the same tier) Adpatch will ask questions about what
kind of APPL_TOP it is in, so it will know what portions of the driver to run.
What is Shaggy's real name?
Norville 'Shaggy' Rogers
Dallas Oracle User Group
5
(Continued on page 7)
DALLAS ORACLE USER GROUP
(Continued from page 4)
interMedia-Text, based on Oracle’s award winning ConText functionality, delivers powerful text retrieval capabilities fundamental to Web applications. interMedia-Text enables organizations to manage unstructured text data as easily as traditional structured data while additional functionality provides users with the technology to easily search text data with advanced retrieval and natural-language queries.
ORACLE IFS: INTERNET FILE SYSTEM
Oracle iFS combines the power of the Oracle8i server with the ease of use of a file system. iFS provides universal access
to data, making data that is stored within Oracle8i appear as if it were simply another file system volume on the network.
Whether users access contents of the iFS through Windows Explorer, a Web browser, an FTP client, or an e-mail client,
the files appear the same. Relational data can appear and be manipulated as files; so too can “hybrid” documents that
combine relational and non-relational data.
From a developer’s standpoint, the iFS is the single data store containing the data for many different applications, making
application development and interfacing much easier. For the system administrator, the iFS is a single system for file storage and messaging, rather than several separate systems to maintain and administer.
JAVA AND APPLICATION DEVELOPMENT
Oracle8i continues Oracle’s Java strategy by introducing a Java VM in the database for storing and executing Java code
on the server. Oracle8i also introduces SQLJ, a syntax for embedding SQL into client or server Java code. Java in the
database allows you to create high performing, scalable applications based on open, industry standards.
The Java VM in the Oracle Data Server allows you to write, store, and execute Java code within the database. This allows
you to create stored procedures, functions, or triggers in Java. This also dramatically reduces the skill set required for
database programming. As opposed to C, OCI, PL/SQL, and other languages, you can now develop applications using
only Java.
(Continued on page 9)
Dallas Oracle User Group
6
DALLAS ORACLE USER GROUP
(Continued from page 5)
UNIX QUESTIONS
I know the name of a UNIX command, but I don't
know what it does?
Use the 'whatis' command
whatis will give a brief description of the command
Example:
$ whatis grep
grep
grep (1)
- search a file for a pattern
OK. I know what a UNIX command does, but I can't
remember the name?
Use 'man -k'
This will do a keyword search of the man pages
Example:
$ man -k grep
egrep
egrep (1)
- search a file for a pattern using full regular expressions
fgrep
fgrep (1)
- search a file for a character
string
fmlgrep
fmlgrep (1f) - search a file for a pattern
grep
grep (1)
- search a file for a pattern
nisgrep
nismatch (1) - utilities for searching NIS+
tables
What are .o files? .a files?
When a programmer writes a program, he begins by
writing the code in a programming language. This
'source code' is kept in a text file. When he is ready to
build the program, he runs the source code text through
a compiler. This translates the source code into 'object
code'. Object code is in a format that is understandable
by the machine. ('Machine language') Note that object
code is not portable across platforms. The same source
code compiled on a Solaris machine will produce a different .o file when compiled on a HP-UX machine. All
object files (.o, .a, .so) cannot be copied across different
platforms. When all the object code is compiled, the
programmer next collects all the object files, and runs
them through the linker. The linker basically collects all
the object code, along with any other necessary code,
and produces an executable (or 'binary') Object code
can also be collected into a library file, or archive. (.a
file) This file is created by the 'ar' command. It just collects all the object code nto one file, and adds a table of
contents to it. Library files can be linked into an executable the same way as .o files. Oracle delivers its
code (except for the NT platform) as .o or .a files. These
files are run through the linker to produce executables.
What are .so files?
.so files contain object code like .a and .o files. However, these libraries are not linked in when the programmer creates the executable. Instead, they are loaded in
when the program runs. This allows the library to be
shared among multiple programs, hence the name
'shared libraries' (on Windows, these are called DLLs) If a
program cannot find the shared libraries it needs, it will
not run. See also the questions on ldd and
LD_LIBRARY_PATH.
How do I tell an HP10.20 object file from an HP11.0
object file?
The preferred way to tell whether an object was built with
HP-UX 10.20 or HP-UX 11.0 is use the odump command.
odump -comp <object name>
The -comp switch will give you the flags with which the
object was compiled as will as the revision. The revision
number for objects built with 10.x will appear as "A.10.xx"
where xx is dependent on the exact revision and patch
level. For 11.0 objects, the revision number will appear
as "A.11.xx".
What is the best way to kill a process?
First, use ps to get the process id (PID)
Try using: kill <pid>
This will give the process a chance to clean up after itself,
like removing temp files, etc. Some processes will not accept or ignore this signal. If the process does not go
away, use: kill -9 <pid>This signal cannot be ignored, it
will definitely kill the process. The process will not have a
chance to clean up after itself though. Use kill -9 only if
necessary. Note that you must be the process owner or
the superuser to kill a process.
How about killing defunct processes?
You can't do it. Defunct processes are already dead, the
system just has not been able to clean up the process because the parent process is not responding.
How do I get a process to coredump?
Send it the QUIT signal. This is usually done with Control\
It will cause the process to exit and generate a core file.
You can also use: kill -s SIGQUIT <pid>
What does '..don't know how to make target XXX'
mean?
Applications uses the 'make' command to build executable programs. 'Make' uses a 'makefile', which is basi
cally a list of programs to build and instructions on how to
build them. These programs are called 'targets' in the
makefile. When you say: 'make XXX', it looks in the
makefile for a target called 'XXX', and follows the instructions there to build it. If it cannot find the given target in
the makefile, it returns this error.
So either:
1. A wrong name was passed to the make command
Dallas Oracle User Group
7
(Continued on page 10)
DALLAS ORACLE USER GROUP
Dallas Oracle User Group
8
DALLAS ORACLE USER GROUP
(Continued from page 6)
SQLJ is an embedded SQL language for Java. Client or server Java code can easily embed SQL for communication with
a relational database. SQLJ is an open standard being developed by Oracle, IBM, and Sun. Client-side Java code with
SQLJ statements are run through a Java pre-compiler to create executable Java programs based on JDBC. Server-side
Java code directly accesses the database via native interfaces. SQLJ provides a powerful and easy to use interface between relational databases and Java.
Oracle8i also provides support for Enterprise Java Beans and communication via the CORBA communication standard
IIOP. Distributed Java objects can connect directly to Java objects in an Oracle Data Server via native CORBA protocols.
JDeveloper is Oracle’s next generation component-based Java development tool. JDeveloper allows developers to build
complete Oracle and 100 percent Java business solutions. JDeveloper supports any kind of development from a simple
JavaBeans component to an enterprise-wide application development environment.
DATA WAREHOUSING AND OLTP
Oracle8i expands upon the high-end functionality of Release 8.0 and includes new features for managing multi-user data
warehouses, more partitioning options, better interaction with OLAP tools, and a fast and easy mechanism for moving data
between identical Oracle databases.
RESOURCE MANAGEMENT
Managing CPU and disk resources in a multi-user data warehouse or OLTP application is challenging. As more users require access, contention for resources becomes greater. Oracle8i introduces resource management functionality to provide greater control of system resources assigned to users. Important on-line users, such as order entry clerks, can be
given a high priority, while other users -- those running batch reports -- receive lower priorities. High priority users are
given more system resources than lower priority users. Users are assigned to resource classes, such as “data warehouse” or “OLTP”, and each resource class is then assigned an appropriate percentage of machine resources.
PARTITIONED TABLES AND INDEXES
Partitioning stores large tables and indexes in pieces, instead of as one large monolithic object. Partitions are a “divide
and conquer” technique which provides scalable performance with a large amount of data. Oracle8 Release 8.0 introduced range partitioning which provides better manageability, availability, and performance. Oracle8i introduces two new
partitioning types: hash and composite. Hash partitioning provides an easy-to-use mechanism for evenly striping data
across devices, retaining the benefit of performance. Composite partitioning combines the best of both approaches. Data
is first partitioned by a range of values, then each partition is sub-partitioned into several hash partitions.
Hash partitioning provides a very simple way to break data up into evenly sized containers to be spread across multiple I/O
devices, or even multiple machines in a shared-nothing cluster. Query performance is improved by spreading I/O across
multiple devices. Manageability is simple if the number of partitions doesn’t change, which makes this approach inappropriate for rolling change windows of historical data.
Composite partitioning provides the superior manageability and availability benefits of range partitioning with the data distribution advantages of hash partitioning. You specify ranges of values for the primary partitions of the table or index, then
you specify a number of hash sub-partitions. Data skew is unlikely because you can always add or drop sub-partitions
within a partition to maintain even distribution of each container. You can also easily maintain rolling change windows of
historical data by adding/dropping primary partitions without affecting sub-partitions in other primary partitions.
All partitioning techniques are transparent to applications and standard DML statements run against partitioned tables.
The optimizer is partition-aware, and partitions which could not contain any data for a query are eliminated from the
search, often resulting in a substantial performance increase.
SUMMARY MANAGEMENT
Oracle8i provides a mechanism for storing summaries as tables which can be accessed when a query requests an aggregated value. When a query requests a summary of detail records, the query is transparently re-written to access the
stored aggregates, rather than summing the detail records every time the query is issued, thereby resulting in dramatic
query performance improvements. These summaries are automatically maintained from data in the base table.
(Continued on page 12)
Dallas Oracle User Group
9
DALLAS ORACLE USER GROUP
(Continued from page 7)
2. The make file does not contain the given target.
This could mean that you need a newer version of the
makefile
If the error points to a .o file, as in XXX.o, it could mean
that the .o file is missing. What happens is, make finds
the target in the makefile, sees that it depends on the .o
file, and looks for the .o file in the filesystem. When it
does not find it, it tries to make the .o file by looking for a
target for the .o file. When it does not find this target, it
returns the error.
Note that adrelink uses makefiles called $PROD_TOP/lib/
prod.mk
Where 'prod' is the short name of the product, like fnd.mk
and inv.mk
How do I use the modem pool?
telnet appsmp01
userid is aol
no password
type: c out
type: atdt <phone number>
libelf.so.1 => /usr/lib/libelf.so.1
libintl.so.1 => /usr/lib/libintl.so.1
libmp.so.1 => /usr/lib/libmp.so.1
libw.so.1 => /usr/lib/libw.so.1
This lists all the libraries adaimgr expects to load, and
where they are located.
Using ldd -s will also show the search path ldd used to
find the libraries
Using ldd -v will list a more verbose output
See the ldd man pages for more information.
(See frhp10.fr.oracle.com/ports.html for the command to
use on platforms other than Solaris)
How can I capture zwrite messages to a file?
Use: zwgc -ttymode >>zw.log
You can add this line to your .profile
How do I cut/copy from a zwrite message?
Hold down the shift key while selecting the text.
How do I lookup a UNIX signal number?
Use: kill -l
This will list the signals and their numbers
Also, look in /usr/include/sys/signal.h
All the signals are listed in here as well
How do I telnet outside the firewall?
telnet gatekeeper1
auth <username>@us
enter the response value from your SNK
connect <hostname>
How do I uuencode a file for mailing?
Use: uuencode filename filename > filename.uue
Use uudecode to decode an encoded file
How do I use ldd?
The UNIX command 'ldd' lists dynamic dependencies of
executables or shared objects.
Basically, it is used to list what shared libraries an executable depends on. When an executable is launched, it
expects to load certain shared libraries
(similar to Windows DLLs) It uses the environment variable LD_LIBRARY_PATH to find these shared libraries.
LD_LIBRARY_PATH contains a list of directories, each of
which will be searched. (similar to the PATH variable)
ldd <executable name> will display all the shared libraries
the executable needs, and where the library was found.
Here is an example:
$ ldd adaimgr
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libm.so.1 => /usr/lib/libm.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libposix4.so.1 => /usr/lib/libposix4.so.1
libsunmath.so.1 => /u16/oracle7/product/7.3.3/lib/libsunmath.so.1
libc.so.1 => /usr/lib/libc.so.1
libucb.so.1 => /usr/ucblib/libucb.so.1
libresolv.so.2 => /usr/lib/libresolv.so.2
How do I set the setuid/setgid bit?
Add a fourth digit to the 'chmod' command
For example, to set permissions to 755 you would normally use: chmod 755
To set the setuid bit, add a 4 before the 755, like: chmod
4755
To set the setgid bit, use: chmod 2755
To set them both, use chmod 6755
Or, use the symbolic method like chmod u+s/chmod u-s
(to set/unset the setuid bit)
chmod g+s/chmod g-s (to set/unset the setgid bit)
(Remember, the oracle executable must have the setuid
bit set or no other users
besides oracle will be able to connect to the database)
How do I get the value of SHMMAX?
Solaris: use 'sysdef | grep SHMMAX'
HP-UX: use 'grep SHMMAX /usr/conf/master.d/core-hpux'
I want to eject the cdrom, but it says it is busy. How
do I find who has it locked?
Use the 'fuser' command
Type: fuser -u /cdrom (or whatever mount point the cdrom
is on)
This will give a process ID, followed by a letter
The letter 'c' indicates this process is using the /cdrom
directory as it's current directory
From the process id, you should be able to find the user
Dallas Oracle User Group
10
(Continued on page 11)
DALLAS ORACLE USER GROUP
(Continued from page 10)
I'm trying to uncompress a file that I know is in this
directory, but it keeps telling me the file cannot be
found?
Make sure the file has an extension of .Z (capital Z)
Uncompress will try to add the extension if it does not
have it and you will get something like this:
$ uncompress 504305t.z
504305t.z.Z: No such file or directory
How do I remove a file that begins with a hyphen?
(Like -filename)
rm will normally complain about an invalid option if you
say: rm -filename
Most UNIX commands will bhave this way, treating the
characters after the hyphen
as an option.
rm has an option to say 'end of options, the next parameter is a filename'
The option is '--' (double hyphen)
So you can use: rm -- -filename
Most UNIX commands have a -- option like this to signify
end of options.
My Escape key does not work in vi? Help!
Go to your NCD boot server machine (orlsun1, 2, 10, or
11)
There should be a file called 'xh' in your home directory.
Add these two lines to the file:
/usr/openwin/bin/xmodmap -e 'keycode 9 = grave asciitilde' &
/usr/openwin/bin/xmodmap -e 'keycode 14 = Escape' &
Reboot your NCD.
Now, the ~ key (at the top left of the keyboard) is now the
Escape key.
The ~ and ` are on the key between the Shift key and Z.
(Control-[ also works as Escape)
NETWORKING
How do I start a SQL*Net trace? (on the client)
In sqlnet.ora, set: TRACE_LEVEL_CLIENT=16
TRACE_FILE_CLIENT=<filename>
(to use a different file name, default is sqlnet.trc)
TRACE_DIRECTORY_CLIENT=<path>
(to put the trace file in a different directory, default is ORACLE_HOME\network\trace)
How do I start a SQL*Net trace? (on the listener)
Use: lsnrctl trace 16
lsnrctl trace off
Or:
In listener.ora, set: TRACE_LEVEL_LISTENER=16
TRACE_FILE_LISTENER=<filename>
(to use a different file name, default is listener.trc)
TRACE_DIRECTORY_LISTENER=<path>
(to put the trace file in a different directory, default is
$ORACLE_HOME/network/trace)
How do I start/stop the TNS listener?
To start the listener: lsnrctl start [listener name]
To stop the listener: lsnrctl stop [listener name]
The listener default name is LISTENER. If the listener has
a different name, you must supply the name
To reload the listener.ora file: lsnrctl reload [listener
name]
To check the status: lsnrctl status [listener name]
REPORTS/PRINTING
How do I run reports from the commandline?
ar25run userid=apps/apps@database destype=file
desname=try.out
desformat=$FND_TOP/srw/L
batch=yes report=<path to report>
Substitute the report name you want to run
Use the srw file appropriate for the report
The output will be in the try.out file
How do I run ar25run in debug mode?
Under $FND_TOP/bin there should be two files: ar25run,
and ar25rund
Rename ar25run to ar25run.save
Rename ar25rund to ar25run
Now, whenever a report is run, it will produce a log file
called ar20run.log
This file will contain the command line used to run the report, as well as the environment
(Note that this will not actually run the report)
How do I relink Reports?
cd $ORACLE_HOME/reports25/lib
make -f ins_reports25.mk cinstall
make -f ins_reports25.mk minstall
How do I install SQL*Report?
On the 10.7 CD, there is a directory called rdbms732.
Under this is a directory called rptpatch.
Copy this directory to your local disk and run the script
'patchutil.sh'
On HP-UX, the directory does not exist on the CD. Instead, there is a file called PATCHES. Copy this file to
your disk and execute:
cpio -icdvu < "PATCHES;1"
What are the different Reports executables?
The Applications versions: (These are linked with Applications user exits)
Dallas Oracle User Group
11
(Continued on page 13)
DALLAS ORACLE USER GROUP
sponse time.
(Continued from page 9)
Oracle8i also includes the CUBE and ROLLUP operators
in SQL for OLAP-type analysis. This makes cross-tab
and Rollup reports easy via simple SQL.
TRANSPORTABLE TABLESPACES
Moving data from a data warehouse to a data mart or
from an OLTP system to a staging area for a data warehouse can be cumbersome and time consuming. Direct
path loading via SQL*Loader or parallel DML makes the
task faster, but the process should be simpler for data
movement between identical databases. Oracle8i provides a mechanism for copying tablespaces (datafiles)
between identical systems and allowing the same data to
be accessed by both systems. Now data movement can
be as fast as simply transferring the file between machines. This greatly improves performance and operational simplicity of transferring data.
DIRECT PATH LOAD API
Oracle8i provides an API to the direct path load mechanism. This provides a way for ISVs and system management tool partners to create easy-to-use and highperformance data loading tools. Access to all load functionality is available through the API. Performance of any
third-party data loading tool can therefore be comparable
to SQL*Loader.
MAINFRAME-CALIBER OLTP
Demanding OLTP applications benefit from a number of
new features which improve availability, scalability, performance, and manageability.
AUTOMATED STANDBY DATABASE
Oracle8i improves upon the standby database features
introduced in Oracle7 Release 7.3. Redo log files are
now automatically shipped and applied to the standby
database. This greatly simplifies the administration of the
standby system and allows it to be quickly available in the
event of a failure at the primary site.
Optionally, Oracle8i allows you to perform read-only operations on the standby database. You can halt the application of the redo log files to perform queries and produce
reports on the standby so as not to consume resources
on the primary system. Once the reports are complete,
you can then resume the automatic application of redo log
files.
ADVANCED QUEUING AND DATABASE EVENT TRIGGERS
Advanced queuing adds direct support in the database for
high performance queuing or messaging operations. This
capability adds asynchrony and eliminates the dependency on external systems for applications requiring high
scalability. The enqueue and dequeue operations may
also be used to shift processing from within a transaction
to a background process, improving the transaction re-
In Oracle8i, advanced queuing has been improved with a
robust rule-based publish/subscribe model for automatic
forwarding of messages to registered clients. Applications can subscribe to a queue using a rule to determine
what queue messages they are “interested” in.
ORACLE PARALLEL SERVER IMPROVEMENTS
Numerous enhancements in the Oracle Parallel Server
improve performance, scalability, and manageability. Oracle8i brings a new mechanism for inter-instance communication with dramatically improves the performance of
read operations between instances. If an instance requests to read a block, it no longer needs to have the
block pinged to disk before the read operation. The block
is sent over a high-speed interconnect between instances
and the read completes significantly faster. This new
mechanism, named the Consistent Read Server, allows
applications to be implemented in an Oracle Parallel
Server without modification to utilize the scalability that
clusters offer.
Oracle8i also brings significant manageability improvements to the Oracle Parallel Server. New views aid in determining where errors occurred. There are new statistics
about cache coordination between instances that can
help tune the environment. Also, configuration wizard
aids the setup and maintenance of the Oracle Parallel
Server.
EXTENDED BACKUP/RECOVERY SUBSYSTEM
Recovery Manager has been enhanced in Oracle8i to provide significant manageability improvements. Recovery
Manager now has an integrated media management layer
so that it can direct the media management software to
perform the copy operation on Oracle’s behalf. Recovery
Manager also cross checks its catalog with the media
management software’s catalog and marks deleted backups as “expired”. Recovery Manager also allows the administrator to preview a planned restore/recovery, thus
allowing them to know what will happen before the restore/recovery starts. For multiple copies of backups, Recovery Manager now allows you to duplex backup sets to
multiple I/O devices.
For easy rollout of multiple identical databases, Recovery
Manager allows you to restore duplicate databases. You
can restore a database in multiple locations, for example,
for the purpose of deploying a distributed database.
Recovery Manager also improves the performance of
MPP systems by being aware of disk affinity on each
node. Recovery Manager will attempt to perform local
read and write operations as opposed to remote operations.
Dallas Oracle User Group
12
(Continued on page 15)
DALLAS ORACLE USER GROUP
from the command line, the problem may be with the
printer or the OS print services.
(Continued from page 11)
ar25desb: Reports Designer
ar25run: Reports runtime - ascii
ar25runb: Reports runtime - bitmapped
ar25rund: Reports runtime - debug version
The regular Reports versions:
r25desm: Reports Designer
r25run: Reports runtime - ascii
r25runm: Reports runtime – bitmapped
How do I troubleshoot print driver problems?
One technique is to create a shell script that will capture the print command and
arguments the concurrent manager is using.
1) Create the following shell script and place in a directory in the
concurrent managers PATH (such as /usr/bin)
2) Give execute privileges to the script
3) Shut down the managers
4) Pick a print driver and add the name of the script
before the lp command in the
Arguments field eg. testprt lp -c d$PROFILES$.PRINTER ...
5) Make sure this driver is assigned to a style and a
printer
6) Start the managers
7) Print a report using this driver
8) The output should look like:
Mon Jul 6 10:49:34 EDT 1998
Arguments are: lp -c -dorlprt1 -n1 tPFERGUSO.1457540 /usr/tmp/OFAAAa001O_.t
The script is:
#!/bin/sh
(date; echo 'Arguments are: '$*;cat) >>/tmp/oraclewws.log
This is for print drivers with std input set to yes
For drivers with std input set to no, remove the 'cat'
command.
You will see the actual command executed by the
concurrent manager, and any arguments passed to it.
You should be able to execute this from the command
line.
From the example above, we see that lp is being
called to print one copy on printer
orlprt1, with the title being 'PFERGUSO.1457540' The
last argument is the file to be printed. You can open
up this file and see the escape codes at the top and
bottom.
From this information, you can determine if the concurrent manager is using the correct
arguments and escape codes. If everything looks OK,
and the problem replicates
How do I add escape codes at the beginning of a
report?
Open the report in vi (Note that 'more' does not always
display escape codes)
Add an escape character with: Ctrl-V Ctrl-[
This will show up as: ^[
This corresponds to the /e in the form.
Eg. if you have the escape code /e&k3G in the form,
add: Ctrl-V Ctrl-[ &k3G
This will show up as: ^[&k3G
Once you add the escape codes, you can use 'lp' to
print the report. This lets you
troubleshoot the correct escape code sequence much
faster than submitting a report.
How do I get a title printed on the banner page of
a report?
Use the '-t' option of lp
Add this option to the arguments field in your print
driver.
For example, the command line might look like:
lp -c -t "This is the title" -d$PROFILE$.PRINTER ...
ALERTS
How can I find an event alert trigger?
You need to know the name of the table the event
alert is on
Connect as APPS in SQL*Plus
SELECT trigger_name, table_name, status
FROM user_triggers
WHERE table_name = 'TABLE_NAME';
Alert triggers will have names like:
ALR_TABLE_NAME_IAR or
ALR_TABLE_NAME_UAR
the IAR trigger is the INSERT trigger, the UAR trigger
is the UPDATE trigger
Selecting TRIGGER_BODY from USER_TRIGGERS
will give the text of the trigger
CONCURRENT MANAGER
Check/set the PMON method?
To check the PMON method:
1) cd $FND_TOP/sql
2) sqlplus apps/apps @afimchk.sql
This will tell whether the internal manager is running,
what the PMON method is, and where the log file is
To set the PMON method:
Dallas Oracle User Group
13
(Continued on page 18)
DALLAS ORACLE USER GROUP
not
Our first priority is our people
On the
cutting
edge,
not
chiseled
in stone!
notnotnot
We specialize in designing, developing and integrating decision support, e-commerce and business
applications systems. Our projects require varied skill sets, ranging from high level business consulting to database administration.
We have exciting opportunities for experienced technical staff with a strong understanding of business
principles. If you have experience in any of the following areas, please send us a resume in total confidence addressed to [email protected].
Skill Sets:
Oracle Database Administrator
Oracle Data Warehouse DBA
Oracle Express & Discover
Oracle Designer & Developer
Oracle Web Application Server
Oracle Pro*C (UNIX preferred)
WindowsNT & C/C++
UNIX System Administrator
Benefits:
Highly Competitive Salary
Employer Paid Insurance
Incentive Stock Option Plan
Flexible Spending Accounts
Advanced Training
Challenging Assignments
Generous Vacation/Sick Allotment
www.vistyx.com
Vistyx Corp., HR Dep. 2351 W. Northwest Hwy., Suite 2215, Dallas, TX 75220, Fax (214) 351-2139, [email protected]
An Equal Opportunity Employer
Dallas Oracle User Group
14
DALLAS ORACLE USER GROUP
(Continued from page 12)
tier as a particular user.
Oracle8i introduces the Log Miner feature which allows
DBAs to view the contents of the transaction log files, allowing them to view what SQL DML and DDL operations
were executed, by whom, and at what time. It also creates the SQL necessary to ‘back-out’any transaction that
was inadvertently executed by a user.
REPLICATION
Oracle8i Enterprise Edition delivers the industry’s most
comprehensive replication capabilities. From mass deployment applications such as sales force automation to
applications requiring data synchronization between
servers supporting, for example, multiple websites or call
centers, Oracle’s advanced replication supports them all
in one integrated environment.
OPERATIONAL SIMPLICITY
Oracle8i dramatically improves the installation, configuration, and manageability of Oracle applications. Oracle
Universal Installer and the Database Configuration Assistant are a Java based applications used to install, pretune, and configure an Oracle8 database environment by
detecting hardware characteristics and prompting for information, such as the number of concurrent users the
database will support. The installation and management
of Oracle Parallel Server has been dramatically improved
since Oracle Universal Installer is cluster-aware and distributes and installs software on all nodes in the cluster.
EXTENSIBILITY
Oracle8 Release 8.0 had cartridges available for most
popular unstructured datatypes, such as images, video,
text, and spatial data. Oracle8i includes a comprehensive
set of APIs for third-party data cartridge developers. This
allows partner-developed data cartridges to have the
same internal access mechanisms as Oracle-developed
data cartridges. New data cartridges have low-level access to memory, the optimizer, indexing, and other
database internals. Partners can develop highly customized data cartridges and meet performance goals of
demanding multimedia applications.
SECURITY IMPROVEMENTS
Oracle8i introduces fine-grained access control and an
improved security model for multi-tiered environments.
Fine-grained access control uses a parameter-driven, extensible application context to allow applications to control
user access based on a user attribute, such as their customer number. For example, for a Web application, you
may wish to give access to external customers, but allowing them to access only their own orders. Using finegrained access control, this can be easily accomplished
without the administrative overhead of views by using the
context area to store the customer number and a security
policy to determine what rows can be accessed.
Currently, in multi-tier architectures, the middle tier is typically insecure and can perform any action on behalf of
any user. Middle-tiers, especially Web servers or application servers, may often sit on or outside a firewall, so limiting their access and auditing their actions is important.
Oracle8i provides the ability to limit what users a middle
tier can connect as and the ability to audit that the middle-
REPLICATION AUTOMATION
Many of the features in Oracle8i are designed to aid users
implementing front office automation applications, especially mass deployment applications, such as field service
and sales force automation applications. Snapshot refresh group templates, additional monitoring capabilities
in Oracle Replication Manager, and improved off-line instantiation allow you to centrally define and administer
hundreds of remote snapshot sites. Snapshot refresh
group templates allow master-side definition of remote
snapshots. The snapshot definitions can contain multiple
parameters to give you the greatest flexibility in defining
your snapshots.
Additionally, these snapshots can be partitioned both horizontally, as well as vertically, allowing you to deploy the
minimum amount of data needed by a remote site. Vertical partitioning can also protect you from changes at the
master site. If you add a column to a master table (or
drop a column not in use by a dependent snapshot), the
snapshot can continue to perform fast refreshes, without
being affected by the DDL change. Because all of these
new Oracle8 Advanced Replication features are also supported by Oracle Lite, you can choose to deploy your application on a lightweight, mobile database, without having
to sacrifice any functionality.
PERFORMANCE IMPROVEMENTS
Oracle8i continues moving more of the replication code
into the database kernel, further improving replication performance. Just as the triggers used to capture replication
changes were internalized with Release 8.0, the generated packages used to apply these replicated transactions at the remote locations have now been internalized.
Not only does this significantly improve data propagation
performance and reduce instantiation times, but it improves manageability as well.
Internal packages are secure from user tampering and do
not require regeneration. Snapshot refresh performance
has also been improved. While the "push" phase is able
to take advantage of the performance improvements provided by internal packages, the performance of the "pull"
phase has been dramatically improved by greatly reducing the number of round-trips required. This optimization
(Continued on page 16)
Dallas Oracle User Group
15
DALLAS ORACLE USER GROUP
from previous versions to Oracle8i Release 8.1.
(Continued from page 15)
is especially beneficial to users of large refresh groups.
OBJECT-RELATIONAL DATABASE
Oracle8 Release 8.0 made a major leap in data management technology with the introduction of an objectrelational paradigm. Oracle8i completes some of the
functional areas introduced in Release 8.0, and improves
upon many of the features. Object types can now be
columns of partitioned tables and can be loaded using
SQL*Loader. Parallel queries can now operate on tables
with object type columns or object tables. There are also
several performance improvements when using object
types and LOB columns. Variable-width character sets
are supported in CLOB and NCLOB columns. Also, the
client-side object cache has been improved to allow tracing and debugging as well as supporting optimistic locking.
ORACLE8I RELEASE 8.1 NEW FEATURES
OTHER ENHANCEMENTS
Oracle8i also contains improvements in several other areas. National Language Support (NLS), ANALYZE performance and functionality, space management, and diagnostic tools have also been improved.
DATA WAREHOUSING
• Summary management
• Hash and composite partitioning
• Resource management
• Transportable tablespaces
• Functional index and virtual columns
• Online index build and rebuild
• Descending indexes
• Automated parallel query degree
• Join index and DML-aware single table summary
• Read-only standby database
• Direct path load API
• New bitmap index features
• Sample function
• Parallel and fine-grained ANALYZE
• Disable validate constraint state
• Copy statistics
• MERGE partition operation
• Top “n” query optimization
NLS has been improved to support Unicode UCS2 character sets in OCI, ODBC, and the pre-compiler products.
Functional indexes now allow you to provide a linguisticsorted index on column data. Also, the Euro currency
symbol is now supported. NT environments also have
new character sets supported, and new territories are defined in Europe (Belgium, Ireland, Luxembourg, Kazakstan, Uzbekistan), Asia Pacific (Australia, New Zealand,
Singapore), and Africa (South Africa).
ANALYZE functionality has been improved and extended
to allow you to analyze tables in parallel as well as have
more granularity and gather subsets of statistics.
Space management has been improved to allow you to
define tablespaces to use bitmaps to indicate free blocks,
resulting in more efficient storage management.
Oracle8i also contains advanced diagnostic tools to be
used in conjunction with World Wide Support in analyzing
and troubleshooting.
MIGRATION AND INTEROPERABILITY
A simple and fast migration script allows you upgrade
from Release 8.0.x to Oracle8i Release 8.1. The migration utility is enhanced to allow migration from 7.3.4 directly to Oracle8i Release 8.1. You can be migrate or upgrade to Oracle8i Release 8.1 and set the COMPATIBILITY parameter to a previous release to disallow any new
functionality.
INTERNET COMPUTING
• WebDB to build, deploy, and monitor Web applications
• InterMedia
• Oracle iFS: Internet File System
JAVA
• Java VM in the database
• Java stored procedures, functions and triggers
• Seamless interaction between Java, SQL, and PL/
SQL
• SQLJ: embedded SQL in Java code
• Enhanced JDBC driver
OLTP
• Publish and subscribe capabilities
• Database event triggers
• Autonomous transactions
• Single table hash cluster
• Object type columns in partitioned tables
• LOBs in partitioned tables
• Partitioned index-organized tables
• Stable optimizer execution plans
ORACLE PARALLEL SERVER
• Consistent Read Server for scalable inter-instance
queries
• Installation Wizards
• Automatic connection load balancing
• Job execution forced on specific node
Export and Import are also supported to move data to and
Dallas Oracle User Group
16
(Continued on page 17)
DALLAS ORACLE USER GROUP
(Continued from page 16)
OBJECT-RELATIONAL DATABASE
• Temporary LOBs
• Collection un-nesting
• Enhancement of object views
• Enhancements to object cache
• Enhancing SQL Loader to support loading of objects,
collections and LOBs
• LOB performance enhancements
• LONG to LOB data migration
• User-defined object identifiers and nested table identifiers
• Analyze detects dangling REFs
SECURITY
• Fine-grained access control
• Extensible and parameter-driven application context
specification
• LDAP integration
• N-tier authentication/authorization
• SSL and X.509v3 support
• RADIUS adapter
EXTENSIBILITY
• Extensible indexing
• Extensible optimizer
• Data cartridge services
• Pro*C external procedures
• OCI callback registrations
• Secondary indexes on index-organized tables
• Support for objects in external procedures
OTHER
• Euro currency symbol support
• Temporary tables
• Subprogram execution under invoker’s security context
• More control over remote join operations
• Microsoft Transaction Server integration
• HTTP protocol adapter for Net8
SYSTEMS MANAGEMENT AND EASE OF USE
• Multi-user, Java-based Oracle Enterprise Manager
• Java-based Oracle Universal Installer
• Java-based Database Configuration Assistant
• Automatic instance registration with listeners
• Parallel recovery of parallel transactions
• Drop Column
• Progress monitor for long-running operations·
• Recovery Manager performance improvements
• Recovery Manager awareness of disk affinity
• Log Miner to view redo logs
• Automated and queryable standby database
• Bounded recovery time for instance recovery
• Detection and repair of corrupted blocks
• Locally-managed tablespaces
• Multiple archive processes and destinations
• Simplification of tablespace point-in-time recovery
REPLICATION/FRONT OFFICE AUTOMATION
• Snapshot templates for easier mass deployment
• Off-line instantiation
• Column-level subsetting in updatable snapshots
• Internalized apply packages
• Snapshot refresh performance improvements
• Security model enhancements
• Oracle Lite support
PL/SQL IMPROVEMENTS
• Manipulate multiple data items with one SQL statement in PL/SQL (bulk binds)
• Parameter passing by reference in PL/SQL
• Embedded dynamic SQL in PL/SQL
• PL/SQL code coverage for tools vendors
• Unlimited PL/SQL package size
Dallas Oracle User Group
17
DALLAS ORACLE USER GROUP
started with.
The other processes showing 'Concurrent_Processor'
are Standard manager processes
Notice that the Internal manager process is the parent
process of the Standard
managers. (processes 24936 and 24938)
(Continued from page 13)
1) first shut the concurrent managers down
2) cd $FND_TOP/sql
3) sqlplus apps/apps @afimpmon.sql LOCK (or
RDBMS)
Enable/disable the Conflict Resolution Manager?
Use the system profile option 'Concurrent: Use ICM'
Setting this to No (which is the default) allows the
CRM to be started
Setting it to Yes causes the CRM to be shutdown and
the Internal manager will take over the conflict resolution duties.
If the CRM will not start (it is started automatically by
the ICM), check this profile option.
Clean out the Concurrent Manager tables?
First, be sure to shutdown the managers
As the APPLSYS user:
DELETE from fnd_concurrent_processes;
UPDATE fnd_concurrent_queues
SET running_processes=0, max_processes=0;
DELETE from fnd_concurrent_requests
WHERE status_code='T';
If you do not need the information in
fnd_concurrent_requests and it is getting very large,
you can truncate this table as well.
This also works to shutdown the concurrent managers
after killing the OS processes.
Other managers will have the name of the executable,
like ARLIBR or INVLIBR:
$ ps -ef | grep ARLIBR
vd11 13683 13660 0 May 11 ?
0:20 ARLIBR
APPS/82A2A4940000000000000
000000000000000000000000000000000000000 AR
ART
The Conflict Resolution manager will look like:
$ ps -ef | grep FNDCRM
n1070161 24941 24927 0 Apr 29 ?
1:17 FNDCRM APPS_APPDEMO/84BFBEB900000
0000000000000000000000000000000000000000000
000
I hit the Restart button to start the Standard manager but it still didn't start?
Telling a manager to restart just sets the status to
Restart. The ICM will start it
the next process monitor session or the next time the
ICM starts. Use Activate to start a manager immediately. Also, when a manager is deactivated manually,
the ICM will not restart it. You will need to set it to
Restart, or activate it manually.
Why does the "to start" date of my concurrent request default to 24 hours in the past?
(From the Concurrent Processing FAQ)
The short story:
Tell concurrent manager processes apart?
Use: pf -ef | grep FNDLIBR
This will produce output like:
vd11 13703 13660 0 May 11 ?
0:01
FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS/
94A491A1000000000000000000
n1070161 24936 24927 0 Apr 29 ?
0:05
FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS_APPDEMO/
94C4B1C10000000000
n1070161 24938 24927 0 Apr 29 ?
0:06
FNDLIBR FND Concurrent_Processor
MANAGE OLOGIN="APPS_APPDEMO/
94C4B1C10000000000
n1070161 24927 24922 0 Apr 29 ?
2:03
FNDLIBR FND CPMGR FNDCPMBR sysmgr
="" sleep=60 pmon=20 diag=N logfile=/u16/app
If you get patch 387798, then this behavior can be
turned on and off using the profile
"Concurrent:Multiple Time Zones".
The last process, #24927, shows 'FNDLIBR FND CPMGR'
This one is the Internal concurrent manager
Notice that it gives some of the parameters it was
The long story:
This behavior is a temporary fix until we can build time
zone support into the product in a future release.
If the profile "Concurrent:Request Start Time" is set,
then we default the "to start" date of a request to that
value. Otherwise we assume that the user wants the
request to start as soon as possible.
Problems occur when the user is in a time zone that is
ahead of the time zone in which the concurrent managers are running. Say a user submits her request in
a field office in the Eastern time zone at 9:00, so we
default the requested start date to 9:00. But now the
concurrent managers are at HQ in California, so
user's request will run at 9:00
Dallas Oracle User Group
18
(Continued on page 19)
DALLAS ORACLE USER GROUP
(Continued from page 18)
Pacific time, 12:00 Eastern. In order to default requests to start as soon as possible, we submit them to
start 24 hours before their request date. This covers
the worst case time zone difference.
Can I submit a report set using CONCSUB?
No, you may not. This is documented in bug 334337.
How do I submit a request with CONCSUB that
has a null parameter?
Use '""' as the null parameter.
(Single quote, double quote, double quote, single
quote)
How can users submit requests with CONCSUB
without giving them the APPS password?
Try this:
1. As the applmgr user, create a shell script that runs
CONCSUB
Either hardcode the parameters for the report, or pass
them in as parameters to the
script.
2. Change the permissions on this script to 700. Now
no one can read this script and get
the password.
3. Create another script that calls the first script. Pass
parameters along if you need to.
4. Change the permissions on this script to 6755. Now
any user can execute and read
the second script, which calls the first one. Have the
users run this script to submit their requests without
knowing the password.
What is the syntax for controlling the concurrent
manager using startmgr and concsub in NT?
On NT, the concurrent manager is run as an NT service. You start and stop the managers using the Services control panel.
See the Applications Installation manual for NT, Appendix A for details.
See pg. 5-9 of this manual for instructions on creating
the concurrent manager service.
NCA
Do I need to reinstall the 16.1 server patches when
I install NCA?
NO! See the 10.7 NCA install manual. Chapter 2 says
that if you previously installed the 16.1 server patches,
you can omit all steps in the chapter. The patches
included with 16.1 and the NCA server updates are
exactly the same thing.
pletviewer?
1) Configure the virtual directories for the web server
This is documented in the 10.7 NCA installation notes
and the Release 11 installation
manual. 10.7 NCA calls for using oa-doc, and R11
calls for OA_DOC. Either way, the virtual directory
should point to where the help files have been installed.
2) Make sure the parameter clientBrowser is NOT
commented out in the html file
You should remove the exclamation mark at the beginning of the tag
3) Make sure that the path to Netscape (or whatever
browser you are using) is included
in the PATH environment variable.
One way is to add a line to the batch file that starts
the appletviewer that appends to the PATH variable.
This way, every time that the batch file is run, the correct path will be used.
4) Make sure the environment variable
HELP_BASE_URL is set on the Forms Server.
It should be set to: http://server name:port/oa-doc
In Release 11, it is set with the profile option 'Help
System Base URL'
http://server name:port/OA_DOC
How do I get the Forms server to produce a diagnostic log file?
See Using Forms Runtime Diagnostics
When using this with webforms, you add the
"record=collect" parameter to the serverArgs parameter in your html file.
For example, if your html file contains:
<PARAM name="serverArgs" value="module= ...
FNDNAM=APPS>
You would change it like so:
<PARAM name="serverArgs" value="module= ...
record=collect FNDNAM=APPS>
How do I tell if the Forms Server is running?
Use: ps -ef |grep f45
The forms server process is called f45srvm
You will also see other processes named f45runw.
There should always be at least one of these processes. Each user that connects will spawn another
f45runw process.
Example:
$ ps -ef | grep f45
oracle 68 1 0 May 11 ?
0:00 f45srvm
port=9002 pool=1
oracle 18295 68 0 Jun 12 ?
0:00 f45runw
webfile=7,80
What is f45runw? What happened to f45webm?
(Continued on page 20)
How do I get help files to work with the apDallas Oracle User Group
19
DALLAS ORACLE USER GROUP
(Continued from page 19)
For some reason, the f45webm executable is executed with the name f45runw. They are the same
thing, f45webm is the name of the executable on disk,
and f45runw is the name of the process.
appletviewer?
No, the JInitiator file contains <EMBED> and
<OBJECT> tags instead of an <APPLET> tag. You
will get an error using this file with the appletviewer.
How does my environment need to be set before
starting the Forms Server?
The Forms server needs to be started with a complete
Applications environment,
similar to starting the concurrent managers. This
means having APPL_TOP set, and
sourcing the APPLSYS.env environment file. The
Forms server will encounter many problems, including
failing to start, if this is not done.
How do I tell what version of the JDK I am using?
At a command prompt, type: java –version
What is f45ctl for?
f45ctl is used to start/stop the Forms server
This way, you do not need to start it in the background, and the process will not terminate when you
log out.
f45ctl { start | stop } port=port_num log=log_file
Example: f45ctl start port=9000 log=f45log.txt
port number and log file are optional, it will use 9000
as the default port
What is the difference between the JDK and JRE?
JRE is the Java Runtime Environment
JDK is the Java Developers Kit
They both can run Java programs, the JDK is also a
full development environment.
It contains the Java compiler and other utilities required to create Java programs, the JRE can only run
the programs.
Run the Forms server on a different port using the
static html file?
In the html file, add the line:
<PARAM name="serverPort" value="9003">
after the other PARAM tags, using the port number
you want
Then start the Forms server on that port
Do I need separate ORACLE_HOMES for my
database server and my Forms server if they are
on the same machine?
Yes, because Dev2K 1.3.2 is installed in one, and
Dev2K 1.6 is installed in the other. You can install
them both in one home, but you will have problems
when you try to relink.
What about Release 11?
In Release 11, Dev2K 1.6.1 is used for both Forms
and Reports so you can install the database server
and forms server in one home.
Can I run more than 1 Forms server on a machine?
Yes, on different ports
What is the correct syntax for running a local copy
of the jar file?
archive="file:///c:/java/jdk1.1.5.16/appscore.jar"
(Using the correct path and drive letter for your PC)
JAVA/JDK
How do I get a stack dump from the appletviewer?
In the DOS window where appletviewer is running, hit
Control and Break
What is this CLASSPATH thing anyway?
CLASSPATH is an environment variable the Java interpreter uses to search for class files. It is set to a
colon separated list of directories, similar to the PATH
variable. It it used both to locate the Java system
classes, and user-written classes. In Java 1.0, you
always had to set it, or it would not be able to find the
system classes. In Java 1.1, the interpreter uses
classes.zip and the current directory as a default if
CLASSPATH is not set. This means that using the
1.1 JDK on the PC, you do not need to set CLASSPATH.
It also means that if you do set it, you must include the
defaults, or the system classes will not be found. The
JRE uses rt.jar instead of classes.zip, so always include this file in CLASSPATH.
What is the story on those yellow bars on the appletviewer windows?
The Java security mechanism normally prevents applets from performing certain actions on the user's
machine. These include accessing the local disk,
launching programs, and printing. This is a good thing,
since you would not normally want to download an applet off the Internet and have that applet be able to do
these things on your computer. (That would spoil all
the fun for the virus writers) The yellow bars signify
that this is an 'untrusted' applet, and it will not be allowed to do these things. (You will not be able to print
from Action->Print, or launch a browser to view Help
Can I use the same html file for JInitiator as the
Dallas Oracle User Group
20
(Continued on page 21)
DALLAS ORACLE USER GROUP
(Continued from page 20)
files.) Oracle supplies a digital certificate with Applications that essentially turns the applet into a 'trusted'
applet, and the yellow bars are not displayed. This is
the reason for running appscert.bat and importing the
certificate before running Apps.
How do I specify where I want the identitydb.obj
file to be put on the client?
The identitydb.obj file is created when javakey is first
run. (From appscert.bat)
This file is used to hold security information for the appletviewer
In the jdk\lib\security directory is a file called
java.security
Add a line to this file:
identity.database=C:\\directory\\path
using the path you want the file placed in
Note that you must use double backslashes
Where can I find documentation on the appletviewer, javakey, etc.?
Go to the Tools Reference Page at Sun's website
10SC CLIENT
How do I switch Oracle Homes on the client?
Supported way: Use 'Switch Homes' from the 'Oracle
for Windows' group in the Start menu
Manual way:
1) Edit Win.ini, change ORA_CONFIG to the home
you want to switch to
2) Run orainst.exe from this home
3) Choose to Restore Icons
4) If necessary, change the PATH variable in autoexec.bat
5) If on Windows 3.1, reboot
Generate a client-side message file (US.msb)
Use 'Start Concurrent Program'
This can be found under the 'Oracle' program group in
the Start menu
(Note that the AOL Development Kit must have been
installed)
The executable is under ORACLE_HOME\bin, called
startcp.exe
Select Browse and navigate to the ORACLE_HOME\bin directory
Choose FNDMDGEN.exe
Enter a valid database connect string including username, password, and database in the Connect String
field
Enter the language and application short name in the
Arguments field
For example: US FND to generate AOL messages in
English
Hit Run
When the program is done, you can view the log and
output files
Can I run the applications from the OCSM manager PC?
Yes, the OCSM manager has a complete installation
of applications.
You do not need to install a client on this PC to run
Apps.
(Although you can if you really, really want to)
How do I get Report Review Agent working?
See Troubleshooting Report Review Agent
Is there a file that lists patches applied on the
client? (like applptch.txt?)
Look under %APPLTOP%\install\log. There should be
an applptch.txt file as well as log
files from each run of otto.exe.
How can I start Applications with the forms window already maximized?
Add: window_state=MAXIMIZE to the command line
of your shortcut
Why can't I find the registry entry I'm looking for
on the client?
Because the 10SC client is 16-bit...there are no registry entries.
Try the .ini files instead.
CUSTOMIZATION
How do I create a custom application?
Step 1: Create the directory
Create a top directory for your product underneath
$APPL_TOP.
Make sure applmgr has the correct ownership and
permissions.
Create subdirectories underneath this directory that
you will need.
(bin, forms, log, out, lib, etc.)
Add an entry into your APPLSYS.env file to set the
product top
environment variable:
PF_TOP=/u01/appl/pf
export PF_TOP
If you will be creating custom 10SC forms, you will
need to create a top directory on the client PCs. Create a Forms and a Mesg directory underneath it, and
add the product top environment variable to oaconfig.ora.
Dallas Oracle User Group
21
(Continued on page 22)
DALLAS ORACLE USER GROUP
(Continued from page 21)
Step 2: Create the Oracle ID
Create a new Oracle ID in the database. Give the new
schema any roles and privileges it will need.
At this time you can run $AD_TOP/admin/sql/
adappss.pls and adappsb.pls
to create the APPS_DDL and APPS_ARRAY_DDL
packages.
Step 3: Register the Oracle ID
Navigate to the Register Oracle ID form. Enter the
custom Oracle ID, password, and logical database.
Select 'Register' and save the screen.
Step 4: Register the application
Navigate to the Register Applications form. Enter the
long and short application name, abbreviation, and
product top environment variable.
Step 5: Add the application to a datagroup
Navigate to the Define Data Group form. Add your application to a datagroup, using the APPS schema as
the Oracle ID.
Step 6: Register custom tables and packages
Custom tables and indexes are created in the custom
schema, and registered with AOL using the AD_DD
package. See Appendix B of the Installation manual
for an example of this. The APPS schema must have
a synonym for all tables, and be granted privileges on
them. Custom packages and procedures must be created in the APPS schema.
Now custom concurrent programs, forms, reports, etc.
can be registered against your new application.
How do I register a custom concurrent program?
Step 1: Register a concurrent program executable
Navigate to the Define Executable form (AOL Reference manual pg 9-84)
This determines the type of program being run, ie an
Oracle Report, a C program, a shell script etc.
Fill in the executable name, application and execution
method.
For the Execution File, fill in just the filename. The
concurrent manager will look in the appropriate directory under the application's top directory.
For spawned programs, the file must be in the bin directory, for Oracle Reports the rdf file must be in the
srw directory.
For PLSQL concurrent programs, put the name of the
stored procedure.
Step 2: Define the concurrent program
Navigate to the Define Concurrent Program form
(AOL Reference manual pg 9-87)
This form links a concurrent program to the executable you just defined, as well as
defines the programs parameters, incompatibilities,
and other options.
Enter the concurrent program name, application, short
name and description.
Check Standard Submission if you want to be able to
submit this program from the
Standard Report Submission form.
Enter the name of the executable you defined and any
report information if necessary.
Also define any parameters your program needs here
and any incompatibilities.
Step 3: Add the concurrent program to a Report
Group
First you will need to find the name of the Report
Group to use.
Go to Security->Responsibility and query the responsibility you want to run the program with.
It should show a Report Group name. Query this
name in Security->Responsibility->Report
Add your new program to the list of available programs. Now when you go to submit
a request with this responsibility, you will be able to
submit your custom program.
How do I compile a custom C program?
Spawned programs:
Step 1: Write the code
Self-explanatory
Step 2: Compile the source
You must use the makefile under $FND_TOP/usrxit
Use: make -f $FND_TOP/usrxit/Makefile program.o
We do not support using any other makefile
Step 3: Link the program
This part is a little tricky. You need to create a custom
makefile for this step. Use $FND_TOP/lib/sample.mk
as a starting point. Copy this file to the lib directory under your applications top directory. Rename it <short
name>.mk (ie fnd.mk, gl.mk etc) Modify this file according to the directions in it. Basically you need to
add a target and build commands for your executable.
Next, use adrelink to link the executable:
adrelink force=y ranlib=y "shortname programname"
Step 4: Register the program as in the above question
Immediate programs:
Just don't do it.
How do I run a shell script as a concurrent program?
1: Write the script and call it <name>.prog
Place the script under the bin directory under your applications top directory.
For example, call the script CUSTOM.prog and place
it under $CUSTOM_TOP/bin
2: Make a symbolic link from your script to
$FND_TOP/bin/fndcpesr
For example, if the script is called CUSTOM.prog use
this:
ln -s $FND_TOP/bin/fndcpesr CUSTOM
This link should be named the same as your script
without the .prog extension It should be in the same
Dallas Oracle User Group
22
(Continued on page 23)
DALLAS ORACLE USER GROUP
(Continued from page 22)
directory as the script.
3: Register a concurrent program as described above,
using an execution method of 'Host'
Use the name of your script without the .prog extension as the name of the executable
For the example above, you would use CUSTOM
4: Your script will be passed at least 4 parameters, in
$1 through $4
These will be: orauser/pwd, userid, username, request_id Any other parameters you define will be
passed in $5 and higher. Make sure your script returns an exit status.
5: If your script returns a failure exit status but the
concurrent manager does not report the error (shows
it as still running normal) apply patch 442824
Can I run my custom forms with Forms Designer?
16-bit (SmartClient):
You should be able to run forms with the Forms Designer that comes on the SmartClient CD. The debugger will not work, however. See bug
32-bit (NCA):
If the forms are AOL forms (ie created from template.fmb) they cannot be run from the Forms Designer or Forms Runtime because these executables
do not have the AOL user exits linked in. You will see
many FRM-40800 errors trying to run forms this way.
Also see bug 414115 that describes a problem with
Forms 4.5 and attaching libraries. The only way to run
these forms is through Applications.
Why do my PLSQL stored procedure concurrent
programs error out with: 'Invalid number of arguments'?
See pg. 9-79 of the AOL Reference manual.
PLSQL concurrent programs must have 2 OUT arguments defined.
RETCODE is used to return the error status
ERRBUF is used to return an error message
Note that you do not need to define these arguments
in the Define Arguments form, only in the procedure
itself.
How come when I close my custom form using the
'X' close box I get an export window popping up?
You need to look at the procedure
APP_CUSTOM.CLOSE_WINDOW
This procedure is defined in the TEMPLATE form. It
contains instructions in the comments on how to modify this procedure. You must do this for all of the custom forms you write or you will have problems closing
the window.
The upgrade process may overwrite any data owned
by one of the Oracle Applications. Move all of your
customizations (menus, responsibilities, report
groups, etc) to a custom application. After the upgrade, you can move them back if you want.
SELF-SERVICE WEB APPLICATIONS
How can I assign responsibilities in Release 11
Web Apps?
In Release 11, regular applications users and web
users have been merged. This means that the same
user name and password is used to log into Apps and
Web apps. Also, OSSWA responsibilities are assigned in the Define Users form, just like regular responsibilities. This also means that
FND_WEB_USERS is no longer used.
Where do I find the configuration files for the
Webserver?
Go to $ORAWEB_ADMIN (usually $ORACLE_HOME/
ows/admin) Navigate down to the ows directory, then
into the site name directory There should be a wrb
directory here and a http_servername directory here.
Under the wrb directory will be a config directory and a
log directory. In config, you will find a file called
wrb.app. This file contains the configuration for the
Web Request Broker. It is all the information you enter
on the admin screens. (ie, all the DAD info, cartridge
info, virtual directories etc..) The log directory of
course holds log files. Back up in the
http_servername directory, you will find directories for
each listener. In each directory there will be config
and log directories again. In the config directory is a
file called sv'listenername'.cfg (substitute the name of
the listener)
This file holds the configuration for this listener.
DATABASE QUESTIONS
Which version of 'alter package' compiles just the
header? the body? both?
ALTER PACKAGE package_name COMPILE - compiles the header and the body
ALTER PACKAGE package_name COMPILE PACKAGE - compiles just the header
ALTER PACKAGE package_name COMPILE BODY compiles just the body
How do I find the errors when a package will not
compile?
From SQL*Plus, 'show errors' will usually give you the
last error messages.
How do I preserve customizations through an upgrade?
Dallas Oracle User Group
23
(Continued on page 24)
DALLAS ORACLE USER GROUP
(Continued from page 23)
SELECT name, text FROM user_errors will give you
the errors.
What is the best way to recompile invalid objects?
This has been debated, but my money is on adadmin.
It uses the AD_PARALLEL_COMPILE_PKG to find
invalid objects, create a dependency tree of them, and
divides the jobs up among multiple workers. Also, the
adcmpusr script does the same thing, if adadmin is
not working, or you really just want to run a script.
How do I get the version of a package or package
body?
The table USER_SOURCE contains the text of all the
packages in the current schema.
Each package header or body will have a version
number in the text, something like:
/* $Header: AFSCWEBS.pls 61.0 98/08/13 09:26:56
porting ship $ */
This shows that this package is version 61.0
You can use:
SELECT text FROM user_source WHERE name =
<package name> AND TEXT LIKE '%$Header%';
This also shows the name of the file (AFSCWEBS.pls)
that contains the CREATE statement for this package.
You can run this script if you need to recreate this
package.
How do I find the name of the script that creates a
particular package header or body?
See the question above.
How do I backup a table?
CREATE TABLE backup_table AS SELECT * FROM
table_to_backup;
Dallas Oracle User Group
24
DALLAS ORACLE USER GROUP
PUBLISHING/ADVERTISING INFORMATION
This is a publication of:
Dallas Oracle User Group
Publications Division
6380 LBJ Freeway, Suite 181
Dallas, TX 75240-6411
Publisher and Editor
Alicia Hoekstra
972-960-0180 x.228
Newsletter Coordinator
Sid Poondla
972-527-8819
President
Dana Tate
214-758-8859
Vice President
Arthur Hemsworth
214-312-2509
Applications SIG Co-Chairpersons
Russell Gold
972-960-0180 x.223
Jennifer Mazza
972-960-0180 x.227
SCOUG Liaison & Membership Coordinator
Diana Boules
972-960-0180 x.206
Newsletter Policies:
Copying of individual articles for reprint in
other Oracle Users Group publications is
permitted, providing two copies of the reprint
are sent to the editor at the above address. All
other copies are expressly forbidden, unless
permission in writing is received from the
Editor of this publication.
Advertising is available in this publication.
Advertising rates are subject to change without
notice. The current per issue rates for the following
sizes are:
Business Card (2” x 3.75”)
Quarter Page (3.75” x 5”)
Half Page (5” x 7.5”)
Full Page (7.5” x 10”)
Front Page (1/2 page)
Back Page (1/2 page)
$ 25.00
$ 35.00
$ 60.00
$100.00
$100.00
$100.00
Advertisements must be submitted in IBM
Compatible MS Word (version 6.0 or 7.0), MS
Publisher 97, *.jpg, *.gif or *.tif formats, all in
portrait layout, no tables, via email to
[email protected] or on 3½” diskette. Please do
not exceed the above measurements for each size
and allow at least ¾” at the bottom of a full page ad
for the newsletter footer. NOTE: If you send your
ad in on diskette, your diskette will not be returned.
Please make checks payable to:
Dallas Oracle User Group
If advertisement is sent via email, please include a
note with your check indicating who is sending the
advertisement. You will not receive an invoice.
Payment must be received prior to publication of
the newsletter. Please mail advertisements and
payments to:
Sarah Grimes/Alicia Hoekstra
DOUG Newsletter Publisher
6380 LBJ Freeway, Suite 181
Dallas, TX 75240-6411
972-960-0180
CONTRIBUTIONS WANTED!
DOUG HOME PAGE
We need topics, graphics or anything else that
will add value to the newsletter. In addition, we
need people who are willing to write the
columns. Some possible ideas: Developer,
DBA, Applications (technical, functional,
administrator, etc.), SQL, Oracle Events, book
reviews, and training opportunities.
Please check out the Dallas Oracle Users
Group home page at www.doug.org. If you
have any comments or suggestions, please
contact one of the officers on the list.
Please send your ideas, columns, etc., to Sarah
Grimes ([email protected]).
Dallas Oracle User Group
25
There is also a new MEMBERS ONLY section
on
the
website.
Please
email
[email protected] if you are unsure of your
user id or password.
ORACLE Boot Camp
At Computer Systems Authority, we take training seriously!
We understand the importance of high-impact, hands-on training. The
Oracle environment is changing rapidly and there is a need for fast-paced
programs to get your people “operational” as quickly as possible.
Ø
Ø
Ø
Ø
Ø
Public Classes Now Available
Fast-Paced, Hands-On, Four-Day Class
Small Classes = Personalized Instruction
Classes taught by “Expert” Oracle Consultants
Includes 300+ page Training Manual
For class schedules, prices, outlines, etc., about any of our courses, you can access our web site at
www.csac.com. If you need on-site training information for any of the classes listed, give us a call.
Call for more information
972-960-0180 x120
sgrimes @csac .com
Dallas Oracle User Group
Larry Settles
200 Crescent Court
Suite 300
Dallas, TX 75201-1885
ADDRESS CORRECTION RE QUESTED
Dallas Oracle User Group
26