I am testing an evaluation copy of PB 2017 R2. The migration tool reported no errors when upgrading our PB 12.5.2 app. However, I am seeing random SQL Server errors during runtime that do not occur in PB 12.5.2. I compiled using PowerGen 9.5, and am using ODBC Driver 11 for SQL Server.
Some examples:
'Invalid character value for cast specification'
'The data types text and varchar are incompatible in the equal to operator'
'Datetime field overflow'
'ep_buildschedule is not a recognized built-in function name'
'The INSERT statement conflicted with the FOREIGN KEY constraint "FK_Article_Line"'
All of these are associated with a datawindow or datastore. Additionally, we ported these changes from pbodb125.ini to pbodb170.ini:
[Microsoft SQL Server]
PBMaxBlobSize='1073741824'
PBMaxTextSize='1048576'
IdentifierCase=4
PBSupportBindSelect='NO'
PBSupportBindUpdate='NO'
[SQL Server]
PBSystemOwner='sys'
PBMaxBlobSize='1073741824'
PBMaxTextSize='1048576'
PBPrimaryKeyName='YES'
Block=1
IdentifierCase=4
PBDefaultValues='USER,SYSTEM_USER,USER_ID(),HOST_ID(),HOST_NAME(),DB_ID(),DB_NAME(),CURRENT_TIMESTAMP,NULL'
PBDefaultCreate='YES'
PBDefaultAlter='NO'
PBDefaultExpressions='YES'
PBSupportBindSelect='NO'
PBSupportBindUpdate='NO'
[MS_SQLSERVER_SYNTAX]
GetCatalogIdentity='SELECT c.name FROM sys.syscolumns c JOIN sys.identity_columns i on c.id = i.object_id JOIN sys.objects o on c.id = o.object_id JOIN sys.schemas sc on o.schema_id = sc.schema_id WHERE o.object_id = OBJECT_ID(''&TableOwner.&TableName'') and o.type != 'P' and i.increment_value > 0 and (c.status &128) = 128'
Before I start to research individual errors, are there any settings that must be changed or added to make PB 2017 datawindows compatible with SQL Server?
Thanks,
Don Olliver
Tracing the SQL allowed me to see how the SQL was bound. I resolved all of the issues by adding DISABLEBIND=1 to DBPARM.
Thanks,
Don