COBOL: Error Running Test – PTPDBTST

When running the Simple Connection Test Cobol you may encounter an error such as:

DATA LEN =00001
SCALE =000

Application Program Failed
Action Type : SQL UPDATE
With Return Code: 08001
Error Message : Invalid bind variable number

at pos 00028

PTPSQLRT – Error Encountered
No longer have connection to DB due to an error from previous
action: SQL UPDATE. Bypassing current action: SQL SELECT.
Terminating Program.

Interestingly, your gut should be saying you have the wrong PeopleTools COBOL being ran, and you’d be right.  In my case I had all the compiles done correctly, but I was working in a decoupled home environment, but the source for the application came from an old system where the Application home still had the COBOL source combined with application and tools code.  Once I removed the PT* cobols from the source and recompiled and moved the files around correctly, everything worked like a charm!

Crystal: 8.54 – 64bit Questions

Over the past several days I have been configuring multiple systems with multiple Peopletools versions and I think my mind snapped somewhere.  This 32/64 bit thing is so frustrating.  Basically 8.54 is almost completely 64 bit, but 8.53 is still a 50/50 chance.  When it comes to Crystal with 8.54 you need to make sure you use the 64 bit run time library where as 8.53 and down use the 32 bit run time.  However if you have the full install of crystal so that you can develop reports, you need to put the CrystalExePath to the the full install win32_x86 32 bit directory.

I found this absolutely helpful case on Support:  1540788.1:

PeopleSoft PeopleTools 8.53+ uses the SAP Crystal Reports runtime engine for .NET Framework 4, (Crystal Reports version for Visual Studio 2010), as the runtime for running SAP Crystal Reports. This must be downloaded from the SAP website. Link

Download the Runtime:  PeopleTools 8.53 – 32bit and PeopleTools 8.54 – 64 bit.

When configuring the process scheduler set the CrystalEXEPath to:

8.53:  CrystalEXEPath = C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86

8.54:  CrystalEXEPath = C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win64_x64

If you have Crystal Reports 2008 installed as well as the runtime set the CrystalEXEPath to:

CrystalEXEPath = C:\Program Files (x86)\Business Objects\BusinessObjects Enterprise 12.0\win32_x86

Note:  This are the default install paths and maybe different depending on how you installed them.


Database Cloning Missing Temp Datafiles

I don’t pretend to be an Oracle DBA but I can fuddle my way through most of it without too much of an issue, but there are some really odd things with how Oracle works that drive me crazy.  One of the things that drives me crazy is cloning.  In SQL Server I can clone a database very easily and usually very quickly.  Oracle NOT so much.  I have written a procedure to follow for cloning in the past that is missing a very critical element so I am updated that post and also writing it here for future reference.

When I clone the database I simply copy my data directory with houses my temp and perm tablespaces, and the recreate statement I use puts all the permanent tablespaces back in, but the temporary ones need to be re-added as well.  This can be done with the command:

ALTER tablespace {TableSpaceName} add TEMPFILE ‘{Directory Path/TableSpace.dbf}’ reuse;

If you look in the dump file that is mentioned in the cloning post, at the bottom you should find the TEMPFILE reuse statements for the database.  Just copy them and change the paths and add that to the create script or run the steps manually in sqlplus and you will be good to go!

Oracle Client Install Fails

Okay now this is going to be relatively uncommon for most people, but often times in recent years PeopleSoft requires that we install 32 bit & 64 bit versions of the Oracle Client in order to make everything work as PeopleSoft has been transitioning from 32 bit Windows to 64 bit Windows.

So if you are flying through the installation of a new machine and you put the 32 bit version on without a problem and then try to install the 64 bit version you might run into an error. There are a few reasons this might happen but for me the problem was with a service called:  “OracleRemExecService”.  This service gets created during installation of 32 bit and 64 bit clients, but for some reason doesn’t remove itself cleanly in all situations.  If you stop the service it should stop cleanly and then delete itself.

Continue with your other installation!