I'm using this script on my development machine (SA 220.127.116.1198 dev. edit) to append predefined UOM, SRS and spatial compatibility functions:
IF ((SELECT count(*) FROM SYSSPATIALREFERENCESYSTEM) < 10) THEN CALL sa_install_feature('st_geometry_predefined_uom'); CALL sa_install_feature('st_geometry_predefined_srs'); CALL sa_install_feature('st_geometry_compat_func'); END IF;
That works fine in ISQL. Now we try to deploy SA-18.104.22.1683 (oem) using the deployment assistent. After installing on a "clean" machine (WinXP SP3) and executing this script in dbisqlc results in an error:
Error -156: Invalid expression at 'ST_Geometry::ST_LoadConfigurationData('epsg_uom.dat')' (42W08)
Does anyone know how to solve this problem?
No, I don't - but as you seem to test a deployment, I would strongly recommend to deploy the same version you're using on your development machine (or at least a 12.0.1 version).
answered 06 Jul '11, 09:25
The DeploymentWizard.exe "forgets" to include the file st_geometry_config.tgz into the MSI. When I copy this file to the scripts folder then it works!
Thank you all.
answered 07 Jul '11, 02:51
First, test to determine if it is dbisqlc's fault... I doubt it, but it's an easy test (just use dbisqlc instead of dbisql on the development machine). The dbisqlc utility is ancient and (IMO) should not be used for anything important... but that is a value judgement on my part :)
The dbo.sa_install_feature() procedure can be examined, even edited, in Sybase Central.
Try using the stored procedure debugger to step through its execution... you might be able to see where it is failing, in that procedure or another one it calls like dbo.st_geometry_predefined_uom.
Alternatively, you could try putting MESSAGE STRING ( stuff, more_stuff, etcetera ) TO CONSOLE statements inside those procedures to see what is going on.
answered 06 Jul '11, 11:32