Problem Note 67838: Creating a data set from a hash object might not write all variables to the output data set
When you are writing the contents of a hash object by using the output method to a SAS® data set, not all defined variables are written. The output data set is created but is missing columns. No errors or warnings are written to the SAS log.
A possible workaround is to re-order the data variables in the DECLARE statement. For example, the code snippet below might create a data set with only two variables:
declare hash h();
rc = h.defineData("var1");
rc = h.defineData("var2");
rc = h.defineData("var3");
rc = h.defineDone();
h.output(dataset: "work.hashtbl");
This code snippet, in which the order of the data variables is changed, might correctly create a data set with all three variables:
declare hash h();
rc = h.defineData("var1");
rc = h.defineData("var3");
rc = h.defineData("var2");
rc = h.defineDone();
h.output(dataset: "work.hashtbl");
There is no formula that determines which order for the data variables can create the correct output data set.
Click the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
SAS System | Base SAS | Solaris for x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Linux for x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
HP-UX IPF | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
64-bit Enabled Solaris | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
64-bit Enabled AIX | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Ultimate x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Ultimate 32 bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Professional x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Professional 32 bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Home Premium x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Home Premium 32 bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Enterprise x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Windows 7 Enterprise 32 bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2019 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2016 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2012 Std | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2012 R2 Std | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2012 R2 Datacenter | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2012 Datacenter | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2008 for x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2008 R2 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows Server 2008 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 10 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8.1 Pro x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8.1 Pro 32-bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8.1 Enterprise x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8.1 Enterprise 32-bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8 Pro x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8 Pro 32-bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8 Enterprise x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft Windows 8 Enterprise 32-bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
Microsoft® Windows® for x64 | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
z/OS 64-bit | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
z/OS | 9.4_M7 | 9.4_M8 | 9.4 TS1M7 | 9.4 TS1M8 |
*
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.
Type: | Problem Note |
Priority: | high |
Date Modified: | 2021-05-04 09:58:23 |
Date Created: | 2021-04-29 01:36:43 |