SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 57855: Optimization done for a user-defined format might result in incorrect values being passed to the DBMS

DetailsHotfixAboutRate It

When optimization is done for a user-defined format so that it can be processed by the database management system (DBMS), incorrect code might be passed to the DBMS. Incorrect results might occur when the following is true about the query:

  • A DBMS engine is used to reference a DBMS table
  • A PUT function referencing a numeric user-defined format is used in a SELECT, WHERE, GROUP BY, or HAVING clause
  • Any of the numeric values that are part of the format are greater than 12 digits in length
  • SAS and user-defined formats have not been published to the database

When SAS® tries to optimize the performance of the query by passing the format to the database, it uses a BEST12. format to format the value in the format rather than the actual value. Consequently, a number like 1234567890123 is passed as 1234567900000.

To work around this issue, turn off optimization of the PUT function by setting the system option SQLREDUCEPUT=NONE.



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemBase SASz/OS9.1 TS1M39.4 TS1M4
Microsoft® Windows® for 64-Bit Itanium-based Systems9.1 TS1M3
Microsoft Windows Server 2003 Datacenter 64-bit Edition9.1 TS1M3
Microsoft Windows Server 2003 Enterprise 64-bit Edition9.1 TS1M3
Microsoft Windows XP 64-bit Edition9.1 TS1M3
Microsoft Windows 2000 Advanced Server9.1 TS1M3
Microsoft Windows 2000 Datacenter Server9.1 TS1M3
Microsoft Windows 2000 Server9.1 TS1M3
Microsoft Windows 2000 Professional9.1 TS1M3
Microsoft Windows NT Workstation9.1 TS1M3
Microsoft Windows Server 2003 Datacenter Edition9.1 TS1M3
Microsoft Windows Server 2003 Enterprise Edition9.1 TS1M3
Microsoft Windows Server 2003 Standard Edition9.1 TS1M3
Microsoft Windows XP Professional9.1 TS1M3
Windows Vista9.1 TS1M3
Windows Vista for x649.1 TS1M3
64-bit Enabled AIX9.1 TS1M39.4 TS1M4
64-bit Enabled HP-UX9.1 TS1M39.4 TS1M4
64-bit Enabled Solaris9.1 TS1M39.4 TS1M4
HP-UX IPF9.1 TS1M39.4 TS1M4
Linux9.1 TS1M39.4 TS1M4
OpenVMS Alpha9.1 TS1M39.4 TS1M4
Tru64 UNIX9.1 TS1M39.4 TS1M4
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.