kevin@u02.svl.cdc.com (Kevin Woodward) (06/15/91)
I have been assigned to a project to create an environment for ORACLE developers working on UNIX workstations and servers. Unfortunately, my ORACLE experience is limited to large-scale proprietary mainframes. If you are currently writing SQL*Forms, SQL*Menu, SQL*ReportWriter, or Pro*ORACLE applications on UNIX, I could really use your help answering some questions: o What 3rd generation language (C, COBOL, FORTRAN, etc.) is most common/important when developing ORACLE applications on UNIX? Any non-ORACLE 4GLs? o Does a developer primarily work with only one of the ORACLE products (SQL*Forms, SQL*ReportWriter, etc.) or do they typically write applications for several ORACLE products? o Do developers primarily use the ORACLE products for development or do they frequently edit the source files directly. For example, to to create a SQL*Forms application, would they use IAD or edit the INP files? o How is ORACLE application code typically stored on UNIX? Are all user exits and application modules stored in the developer's directory or stored in some project directory grouped by application. o Do developers typically use version control for user exits and applications? If so, which product (SCCS, RCS, etc.) is most common or best? o Do most UNIX/ORACLE developers work in a window environment (X, SunView, etc.)? If so, what windows are typically open when developing ORACLE applications? (For example, 1 SQL*Plus window, 1 SQL*Forms, 1 UNIX prompt, 1 editor) o Do most developers use a printed copy of the ORACLE data dictionary when developing ORACLE applications or do they query the database as needed? o When creating a new user exit, is it common to use an existing user exit as a base? If so, approximately how many sample user exits would it take to provide a useful set of templates? o How important is database security in a development environment? For example, are developers allowed to enter their ORACLE usernames and passwords on the command line even though this can be seen using ps -f? o How are ORACLE applications usually built on UNIX? Is it most common to use a Make file, a script, or enter the commands by hand to generate the new product modules (IAP, etc.) and compile applications? o Do developers usually use local versions of the product module (IAP, etc.) or do they typically work with the production version? Do developers often have their own kernel and database? o What third-party development tools work well with ORACLE? Which do not? As you can see, I have a lot to find out before I can begin working on the project. If you have any other comments or suggestions, or you know of a successful development environment for ORACLE on UNIX, please let me know. Thank you for your help. Kevin Woodward jkw@svl.cdc.com
cjackso@uswnvg.UUCP (Clay Jackson) (06/20/91)
In article <34164@shamash.cdc.com> kevin@u02.svl.cdc.com (Kevin Woodward) writes: > >mainframes. If you are currently writing SQL*Forms, SQL*Menu, >SQL*ReportWriter, or Pro*ORACLE applications on UNIX, I could >really use your help answering some questions: > I'm a DBA in shop that does a fair amount of this stuff... >o What 3rd generation language (C, COBOL, FORTRAN, etc.) is most > common/important when developing ORACLE applications on UNIX? Any We use C (Pro*C), but I suspect that the COBOL and FORTRAN implementations are equally good/bad (depends on your point of view). We use embedded SQL (as opposed to the OCI (Oracle Call Interface), and, quite honestly, our biggest problem has been teaching folks who are good FORMS/SQL programmers the nuances of C. I suspect that that same would be true if one tried to take a C programmer off the street and teach 'em SQL. The 'interface' is actually fairly simple to learn and understand, until and unless you need to get into dynamic SQL (ie, changing the SQL statement SYNTAX at execute time). Another thing we've found is that the Oracle documentation is skimpy at best. > >o Does a developer primarily work with only one of the ORACLE products > (SQL*Forms, SQL*ReportWriter, etc.) or do they typically write We used Reportwriter for one task (for which it was admittedly NOT the right choice of tool) and threw it away. So, no experience there, other than a comment that Reportwriter seems fine for stuff that Oracle anticipated you might do (like Master/Detail reports), but for complex reports, you're often better off in C. To their credit, Reportwriter 1.1 is LIGHTYEARS better than 1.0, and it is a VERY full-featured product. > > to create a SQL*Forms application, would they use IAD or edit > the INP files? With Forms version 2.3, we edited INP files. We're just starting Forms 3.0 development, and our developers LOVE it. We will be using the forms designer from now on. > >o How is ORACLE application code typically stored on UNIX? Are all > user exits and application modules stored in the developer's > directory or stored in some project directory grouped by application. Not sure I understand this one - we store application code (ie, complete Pro*C programs, with a main() somewhere) SOURCE in project specific dirs, and keep the executables in /usr/local/bin. We beleive strongly that there should only be ONE copy of runformx (just got bit by that as a matter of fact ;-) ), and it's kept in $ORACLE_HOME/bin. The SOURCES for user exits are also controlled by the DBA group (once the developers have written 'em). > >o Do developers typically use version control for user exits and > applications? If so, which product (SCCS, RCS, etc.) is most common > or best? We use RCS. > >o Do most UNIX/ORACLE developers work in a window environment Most of our developers use tty emulators on PCs. > >o Do most developers use a printed copy of the ORACLE data dictionary Both - as needed. > >o When creating a new user exit, is it common to use an existing user exit Yes - we do this all the time. We started with the Oracle provided samples and went from there. User exits are not rocket science, but then they're not for someone fresh from a 2 week Oracle/C course either. > >o How important is database security in a development environment? We use OPS$ accounts exclusively, except on accounts that own production (or controlled) tables, in which case we try to make users aware of the problems. > >o How are ORACLE applications usually built on UNIX? Is it most common to > use a Make file, a script, or enter the commands by hand to generate We do both, but prefer makefiles for the more complex stuff. > >o Do developers usually use local versions of the product module > (IAP, etc.) or do they typically work with the production version? > Do developers often have their own kernel and database? We INSIST that everyone use the same tools, but do have a separate (and very differently laid out) test database kernel. > >o What third-party development tools work well with ORACLE? Which do not? No experience here. > >As you can see, I have a lot to find out before I can begin working on the >project. If you have any other comments or suggestions, or you know of >a successful development environment for ORACLE on UNIX, please let me >know. Thank you for your help. Good luck - let us know from time to time how you're doing. You're welcome. > -- Clay Jackson - N7QNM US WEST NewVector Group, Inc clayj@cjsysv.wa.com | ...uunet!uswnvg!cjackso