Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

deploying forms application

Status
Not open for further replies.

zik

Technical User
Jan 23, 2006
28
HR
Has anyone been involved in deploying dev2000 (forms, reports) application to windows (not web).
If yes, PLEASE, PLEASE tell me the steps, if possible.
I hear names like checkmap, oinus.msb, PRD etc. They are so novel to me that I don't even know where to start.
I have developed the forms and reports applications but for the life me, I have no idea how to go about deploying this thing.
Any quick help would be greatly appreciated.
zik
 
I'm assuming some things:
1) You have the runtimes already installed on the client PC.
2) The client PC is on network

If this is true this is what we do:

1) We a have a directory on the network to hold the forms and reports.
2) We have a directory on the client PC that will hold the forms and reports.
3) When the client clicks on a application shortcut this runs a bat file that copies
the .FMX and .REP versions of the forms and reports from the network directory to the
directory on the client PC.
4) The bat file does a CD to the client directory
5) The last statement in the bat file is to start the first form.
c:\ORANT\BIN\F50run32 formname


This is a short version of what we do. To cut down on time to copy we do zip the FMX and REP files.
If you want the this in more detail let me know.

Hope this helps
 
thank you ghilpert.
yes, i want more detail.
i know that i have generated the binary files for reports and forms.
i was told to use project builder and file packager.
what is file packager anyway.
please assume that i know nothing about deploying forms and reports runtime.
any help from will as appreciated as this information you have already provided.
 
I will respond but this will take a little while to write up.
 
I truly, truly appreciate this.
zik
 
Maybe our way is not "generic", but we do not use checkmap, oinus.msb, PRD etc. This words mean that you may create your own distribution and install your application (including both runtimes and fmx) using Oracle Installer. This is commonly used for "boxed" applications. For internal use we just install runtimes on the client machine and place binaries on file server. We also change some registry settings e.g. add FORMSxx_PATH, REPORTSxx_PATH and some others.
Even more simple way (for support) is to place Forms installation on file server and maintain only registry settings.
 
thanks sem!
I am pasting of a portion of your thread that I am particularly interested in:

We also change some registry settings e.g. add FORMSxx_PATH, REPORTSxx_PATH and some others.

I have two questions:
Where do I find FORMSxx_PATH, REPORTSxx_PATH?
What part of the registry do you make changes to?
You can tell from my questions that I can only develop it but know very little about deploying it.
zik
 
If you install Forms/Reports (or to be more precise about any Oracle software) runtimes HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE key is created. There are many keys/values under this key are created also. If you've installed only runtimes (not buiders) you have to add these values manually(xx means version of your forms/reports), installing builders adds them automatically.
I assume that you use Forms 6 or 6i. So you need to set FORMS60_PATH to point to the location where your fmx/mmx/pll/plx reside. If you do not set this value Forms will have some problems with finding your binaries, of course if those paths are not hardcoded (a pretty bad habbit).
The same with REPORTS60_PATH and GRAPHICS60_PATH.
UI_ICON contains the path to icons.
So
1. Install runtimes by Oracle installer
2. Create appropriate directories and upload files (forms/reports/graphics binaries, icons)
3. Set keys according to your directories structure
4. Create shortcuts to your applications. If you've set keys you do not have to specify full path to your binaries.

We place all this stuff to server as well as .reg files and map the application root directory to some logical drive. So our users have similar registry settings and we need not make changes for every user.

 
this is great!
sem, take some stars on my behalf!
zik
 
I'm sorry we don't use file packager, But I think it works along the lines of what we do.
I will break this into several steps.
STEP 1) Background

Network server has a directory called
V:\APPS\WINAPPS\ORCLCLNT under its directory each of out systems has its own subdirectory
within that subdirectory we have two other subdirectories CURRENTP and CURRENTT ( current production and current test)
example: ATS=APPLICANT TRACKING SYSTEM
V:\APPS\WINAPPS\ORCLCLNT\ATS\CURRENTP
and
V:\APPS\WINAPPS\ORCLCLNT\ATS\CURRENTT
These hold our source and compiled versions of forms,reports,pll etc.

We also have separate directory under V:\APPS\WINAPPS\ORCLCLNT
to hold icons,images,uti,other
i.e.
V:\APPS\WINAPPS\ORCLCLNT\icons Holds icons
V:\APPS\WINAPPS\ORCLCLNT\images holds images
V:\APPS\WINAPPS\ORCLCLNT\uti holds common utilities that we write
V:\APPS\WINAPPS\ORCLCLNT\other holds common utilities that we don't write

Also we have a copy of pkzip (command line version ) in V:\APPS\WINAPPS\ORCLCLNT


STEP 2) On the user PC there are two directories
c:\oappst and c:\oappst Oracle application test and production


When the user clicks on the icon for the application I.E. ATS
this runs a bat file that looks like this: name ATS.BAT
-------
echo off
rem ***********************************************************
rem ------Change below to configure for each application and database-------
set appsdb=P
set apps=ats
set appsmain=atsmain
rem -----------------------------------------------------------
rem ------ Normally no changes should be made from this point forward ------
set NETORA=V:\APPS\WINAPPS\ORCLCLNT
if not exist %netora%\app_zip.bat goto runlocal
call %netora%\app_zip.bat %apps% %appsdb% %appsmain%
goto theend
:runlocal
c:
cd \oapps%appsdb%
c:\ORANT\BIN\F50run32 %appsmain%
:theend
-------

this set some variables for ease of maintained
then checks to see if app_zip.bat exist on the network
This file looks like this

-------
rem Calling sequence from application bat file (typically on client)
rem call app_zip.bat <application> <prod/test> <main fmx>
set app=%1
set appdb=%2
set main=%3
SET CTSDRIVE=C
set NETORA=V:\APPS\WINAPPS\ORCLCLNT
%ctsdrive%:
cd \OAPPS%appdb%
copy %NETORA%\%app%\current%appdb%\%app%zxqt.zip
echo on
%NETORA%\pkzip25 -extract=update %app%zxqt.zip
%CTSDRIVE%:\ORANT\BIN\F50run32 %MAIN%
:END
-------

If the ats.bat does not find this file it means the network is down and just runs the application
by c:\ORANT\BIN\F50run32 %appsmain%

If the ats.bat does find app_zip.bat it will call it passing the application(ATS) (P/T) and the main.fmx program.

The app_zip.bat copy a zip file called atszxqt.zip (later I will go into the creation of this file)
Then run pkzip25 extracting only those files that are updated
then it runs the application by c:\ORANT\BIN\F50run32 %main%

STEP 3) To create the zip file we compile the forms and reports on developers PC
move the compiled and source to the V:\APPS\WINAPPS\ORCLCLNT\ATS\CURRENTP
or V:\APPS\WINAPPS\ORCLCLNT\ATS\CURRENTT directory

then click in a icon that runs a bat file called atszmake.bat
-------
set progdb=P
set progname=ATS
set netdrv=V:
set oradir=%netdrv%\apps\winapps\orclclnt
call %oradir%\appzmake %progname% %progdb%
-------

This calls appzmake.bat this is
-------
rem Calling sequence:
rem call appzmake <progname> <progdb>
rem ------------------------------------------------
set progdb=%2
set progname=%1
set netdrv=V:
set oradir=%netdrv%\apps\winapps\orclclnt
set icodir=%oradir%\icons\current%progdb%
set utidir=%oradir%\uti\current%progdb%
set othdir=%oradir%\other\current%progdb%
set imagedir=%oradir%\images\current%progdb%
set zipdir=%oradir%\%progname%\current%progdb%
set pkzip=%oradir%\pkzip25.exe
set zipfile=%progname%zxqt
rem goto theend
%netdrv%
cd %zipdir%
%pkzip% -add=update -path=none %zipdir%\%zipfile% *.fmx *.rep *.pll *.ico *.ogd *.olb %progname%.bat
pause
rem Now pull in icons, utilities and others from general directories

cd %icodir%
pause
%pkzip% -add=update -path=none %zipdir%\%zipfile% *.ico
pause
cd %utidir%
pause
%pkzip% -add=update -path=none %zipdir%\%zipfile% *.*
pause
cd %othdir%
pause
%pkzip% -add=update -path=none %zipdir%\%zipfile% *.*
pause
cd %imagedir%
pause
%pkzip% -add=update -path=none %zipdir%\%zipfile% *.*
pause
:theend
-------

What this bat file does is runs pkzip and adds to the zip file the fmx,rep,pll,ico,ogd,olb and ats.bat into
atszxqt.zip file

Then it adds the updated files from icons,uti,other,images directories

so at the end we have a file that is copied to the client PC and unziped by ats.BAT in step 1.

Hope this helps

I read some of the other answers and keeping the programs on the network is better than what we do
but our network is old and goes down allot and we don't want to stop the client from
running the application so we have to put the programs on the client PC.
So even if the network is down the clients can still work. This is a home grown method and works but it
may not be the best for your set up.
 
Wow, you took your precious time to do this for me!!
Thank you very much ghilpert!!!
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top