From: Pete Dashwood on
I have a client who has a fairly major application written as a series of
PowerCOBOL projects.

Building this for new releases is a maor undertaking and each project has to
be activated (compiled and built) by hand.

I have a solution but, before implementing it, I would like to be sure I'm
not re-inventing the wheel.

Does anyone have any thoughts or existing approaches to this problem?

I'll state my solution if there are no better ideas. If you have a solution
and would be prepared to sell it to us, please let me know by private mail,
giving a brief overview and some sample screen shots.

Basically, the solution should be able to:

1. Permit selection of any number of PowerCOBOL projects.
2. Batch build and compile the specified projects in 1 above and provide
compiler listings and diagnostics for each compilation, along with object
modules (.DLL or .EXE) as specified for each project.
3. Compiles must be able to run locally or remotely on a "COBOL server" with
source, objects and listings, all delivered back to specified directories.

My solution will do this, but if you have anything close that does some or
all of it, please talk to me :-)

Pete.

--
"I used to write COBOL...now I can do anything."


From: HeyBub on
Pete Dashwood wrote:
> I have a client who has a fairly major application written as a
> series of PowerCOBOL projects.
>
> Building this for new releases is a maor undertaking and each project
> has to be activated (compiled and built) by hand.
>
> I have a solution but, before implementing it, I would like to be
> sure I'm not re-inventing the wheel.
>
> Does anyone have any thoughts or existing approaches to this problem?
>
> I'll state my solution if there are no better ideas. If you have a
> solution and would be prepared to sell it to us, please let me know
> by private mail, giving a brief overview and some sample screen shots.
>
> Basically, the solution should be able to:
>
> 1. Permit selection of any number of PowerCOBOL projects.
> 2. Batch build and compile the specified projects in 1 above and
> provide compiler listings and diagnostics for each compilation, along
> with object modules (.DLL or .EXE) as specified for each project.
> 3. Compiles must be able to run locally or remotely on a "COBOL
> server" with source, objects and listings, all delivered back to
> specified directories.
> My solution will do this, but if you have anything close that does
> some or all of it, please talk to me :-)

Yeah, we do/did that.

COMPILE.BAT

@ECHO OFF
IF %1X == RELEASEX GOTO USAGEOK
IF %1X == DEBUGX GOTO USAGEOK
ECHO .
ECHO Usage is COMPILE RELEASE or COMPILE DEBUG
GOTO QUIT

:USAGEOK
ECHO BEGIN > RESULT.TXT
ECHO List of attempted compilations %DATE% %1 > COMPLIST.TXT
ECHO List of compiles > COMPLIST.TXT
FOR %%A IN (BIS*.PPJ) do call :compile2 %%A %1
FOR %%A IN (*.BLG) DO TYPE %%A >> RESULT.TXT
FOR %%A IN (*.BLG) DO DEL %%A
GOTO QUIT

:COMPILE2
@ECHO OFF
REM PC User's Guide Chap 6, p 253
ECHO %1
echo %1 >> COMPLIST.TXT
ECHO Compile %1
echo === BEGIN %1 >> RESULT.TXT


POWERCOB /REBUILD /%2 %1
REM POWERCOB /REBUILD /RELEASE %1


IF ERRORLEVEL 1 GOTO FAIL
GOTO OK

:FAIL
ECHO . >> RESULT.TXT
ECHO !!! E R R O R I N %1 !!! >> RESULT.TXT
ECHO . >> RESULT.TXT
GOTO :EOF

:OK
TYPE *.BLG >> RESULT.TXT
DEL *.BLG /Q
echo === END %1 >> result.txt
ECHO =============================== >> RESULT.TXT
ECHO =============================== >> RESULT.TXT
ECHO . >> RESULT.TXT
ECHO . >> RESULT.TXT
GOTO :EOF

:QUIT

-------



From: Richard on
On Jul 31, 1:17 am, "Pete Dashwood"
<dashw...(a)removethis.enternet.co.nz> wrote:
> I have a client who has a fairly major application written as a series of
> PowerCOBOL projects.
>
> Building this for new releases is a maor undertaking and each project has to
> be activated  (compiled and built) by hand.
>
> I have a solution but, before implementing it, I would like to be sure I'm
> not re-inventing the wheel.
>
> Does anyone have any thoughts or existing approaches to this problem?
>
> I'll state my solution if  there are no better ideas. If you have a solution
> and would be prepared to sell it to us, please let me know by private mail,
> giving a brief overview and some sample screen shots.
>
> Basically, the solution should be able to:
>
> 1. Permit selection of any number of PowerCOBOL projects.
> 2. Batch build and compile the specified projects in 1 above and provide
> compiler listings and diagnostics for each compilation, along with object
> modules (.DLL or .EXE) as specified for each project.
> 3. Compiles must be able to run locally or remotely on a "COBOL server" with
> source, objects and listings, all delivered back to specified directories..
>
> My solution will do this, but if you have anything close that does some or
> all of it, please talk to me :-)

I don't have a Windows Fujitsu COBOL available currently so I can't
test for your environment, but project uses make to do the compiles.
When 'build' is selected it writes a makefile and starts make.

It is only necessary to capture these makefiles and tailor them to
suit your needs and have a batch file kick off the ones that you need.



From: Pete Dashwood on
Richard wrote:
> On Jul 31, 1:17 am, "Pete Dashwood"
> <dashw...(a)removethis.enternet.co.nz> wrote:
>> I have a client who has a fairly major application written as a
>> series of PowerCOBOL projects.
>>
>> Building this for new releases is a maor undertaking and each
>> project has to be activated (compiled and built) by hand.
>>
>> I have a solution but, before implementing it, I would like to be
>> sure I'm not re-inventing the wheel.
>>
>> Does anyone have any thoughts or existing approaches to this problem?
>>
>> I'll state my solution if there are no better ideas. If you have a
>> solution and would be prepared to sell it to us, please let me know
>> by private mail, giving a brief overview and some sample screen
>> shots.
>>
>> Basically, the solution should be able to:
>>
>> 1. Permit selection of any number of PowerCOBOL projects.
>> 2. Batch build and compile the specified projects in 1 above and
>> provide compiler listings and diagnostics for each compilation,
>> along with object modules (.DLL or .EXE) as specified for each
>> project.
>> 3. Compiles must be able to run locally or remotely on a "COBOL
>> server" with source, objects and listings, all delivered back to
>> specified directories.
>>
>> My solution will do this, but if you have anything close that does
>> some or all of it, please talk to me :-)
>
> I don't have a Windows Fujitsu COBOL available currently so I can't
> test for your environment, but project uses make to do the compiles.
> When 'build' is selected it writes a makefile and starts make.
>
> It is only necessary to capture these makefiles and tailor them to
> suit your needs and have a batch file kick off the ones that you need.

Yes, that is how our existing batch compiles work. MAKE is already
integrated into our solution for batch compiling NETCobol. PowerCOBOL is a
little more difficult, not so much from the actual mechanics of compilation,
but for integrating this with the existing Toolset.

There is also a complication with compiling for COM. The process needs to
override the compiler assigned GUID and assign its own, so we can reference
it later. However, the Toolset already does that for NETCobol COM components
and it is just a different template for PowerCOBOL so I am confident we can
do it.

Thanks for the post, Richard.

Pete.

--
"I used to write COBOL...now I can do anything."


From: Pete Dashwood on
HeyBub wrote:
> Pete Dashwood wrote:
>> I have a client who has a fairly major application written as a
>> series of PowerCOBOL projects.
>>
>> Building this for new releases is a maor undertaking and each project
>> has to be activated (compiled and built) by hand.
>>
>> I have a solution but, before implementing it, I would like to be
>> sure I'm not re-inventing the wheel.
>>
>> Does anyone have any thoughts or existing approaches to this problem?
>>
>> I'll state my solution if there are no better ideas. If you have a
>> solution and would be prepared to sell it to us, please let me know
>> by private mail, giving a brief overview and some sample screen
>> shots. Basically, the solution should be able to:
>>
>> 1. Permit selection of any number of PowerCOBOL projects.
>> 2. Batch build and compile the specified projects in 1 above and
>> provide compiler listings and diagnostics for each compilation, along
>> with object modules (.DLL or .EXE) as specified for each project.
>> 3. Compiles must be able to run locally or remotely on a "COBOL
>> server" with source, objects and listings, all delivered back to
>> specified directories.
>> My solution will do this, but if you have anything close that does
>> some or all of it, please talk to me :-)
>
> Yeah, we do/did that.
>
> COMPILE.BAT
>
> @ECHO OFF
> IF %1X == RELEASEX GOTO USAGEOK
> IF %1X == DEBUGX GOTO USAGEOK
> ECHO .
> ECHO Usage is COMPILE RELEASE or COMPILE DEBUG
> GOTO QUIT
>
>> USAGEOK
> ECHO BEGIN > RESULT.TXT
> ECHO List of attempted compilations %DATE% %1 > COMPLIST.TXT
> ECHO List of compiles > COMPLIST.TXT
> FOR %%A IN (BIS*.PPJ) do call :compile2 %%A %1
> FOR %%A IN (*.BLG) DO TYPE %%A >> RESULT.TXT
> FOR %%A IN (*.BLG) DO DEL %%A
> GOTO QUIT
>
>> COMPILE2
> @ECHO OFF
> REM PC User's Guide Chap 6, p 253
> ECHO %1
> echo %1 >> COMPLIST.TXT
> ECHO Compile %1
> echo === BEGIN %1 >> RESULT.TXT
>
>
> POWERCOB /REBUILD /%2 %1
> REM POWERCOB /REBUILD /RELEASE %1
>
>
> IF ERRORLEVEL 1 GOTO FAIL
> GOTO OK
>
>> FAIL
> ECHO . >> RESULT.TXT
> ECHO !!! E R R O R I N %1 !!! >> RESULT.TXT
> ECHO . >> RESULT.TXT
> GOTO :EOF
>
>> OK
> TYPE *.BLG >> RESULT.TXT
> DEL *.BLG /Q
> echo === END %1 >> result.txt
> ECHO =============================== >> RESULT.TXT
> ECHO =============================== >> RESULT.TXT
> ECHO . >> RESULT.TXT
> ECHO . >> RESULT.TXT
> GOTO :EOF
>
>> QUIT
>
> -------

Jerry,

thanks very much for posting this. It is food for thought and I'll consider
it in more detail. Obviously, I'd like something better than a DOS batch
file but the principles are interesting and I never denigrate anything that
works. I think I can produce something more or less equivalent in WSH and
then integrate that with a .NET front end or the existing Toolset tabbed
interface.

(Just looking through it was a trip down memory lane :-) "The ghost of Xmas
past"...)

Thanks for the response.

Pete.
--
"I used to write COBOL...now I can do anything."