asna.com Sign In
ASNA DataGate for SQL Server 8.1.475 
Released to GA Customers February 6, 2009
 
Release Notes
 
OS Compatibility

    * DSS 8.1.469.0 or above is Vista ready and will install on Windows 2008 Server.
Please note that if you are upgrading from DSS 8.1.467.0 or below you will have to uninstall the current version of DSS before you install this version of DSS !/Y!  This is just a one time thing and you will not be required to uninstall the current product with future releases.

* Support for SQL Server Express. 

SQL Server Express is a version of SQL Server 2005, which requires the following minimal configuration:

1.    TCP networking must be enabled via Surface configuration.

2.    UDP port 1434 must be enabled in any firewall that may be running.

3.    TCP port 1433 must be enabled in any firewall that may be running.

4.    SQL Server Browser service must be enabled and started. It is installed disabled by Microsoft.

 

Please see http://devnet.asna.com/documentation/readme/dss_81_readme.htm for other installation details

 
Be sure to uninstall any previous version before installing version 8.1.475.
Note: If you are upgrading from DSS 8.1.458 then do the following things
    1. Remove/Uninstall the current version of 8.1.458
    2. Run the Batch file (Delete Version 8.1.458.0.bat) which can be found under "DataGate 8.1 for SQL Server Downloads" above on the right.
SQL Server Support
 
ASNA DataGate for SQL Server 8.1.330 or above supports SQL Server 2000 - 2005.
Licensing Changes
 
DataGate for SQL Server 8.1 employs a new License Manager that eliminates the duplicate user counts that were encountered in DataGate for SQL Server 5.0

Connecting to SQL Server on Microsoft's XP Pro Service Pack 2
 
Installing Microsoft's XP Pro Service Pack 2, by default, enables the built-in Windows firewall settings which interfere with SQL Server connectivity. These settings, unless changed, won't let you connect to SQL Server with either SQL Server's own Enterprise Manager or with ASNA's DataGate for SQL Server (DSS).

The Windows Firewall closes ports such as 445 that are used for file and printer sharing to prevent Internet computers from connecting to file and print shares on your computer or to other resources. When SQL Server is configured to listen for incoming client connections by using named pipes over a NetBIOS session, SQL Server communicates over TCP ports and these ports must be open. SQL Server clients that are trying to connect to SQL Server will be not be able to connect until SQL Server is set as an exception in Windows Firewall. To set SQL Server as an exception in Windows Firewall, use the steps that are listed here

Known Issues:

Related to case 7500 - SQL “order by” performs comparisons using the defined collating sequence. We set *hival to be binary ones (0xFF), which is an umlaut y (&yuml;) in the SQL_Latin1_General_CP1_CI_AS collation and compares as < ‘Z’.  As a workaround:  set the collation sequence to be used to a binary 1’s, which will compare in binary order. The collation sequence property may be set at the column, table or database level.  Note that changing the collation may result in the rebuilding of indexes.


ASNA DataGate for SQL Server 8.1.475.0 Features and Case Resolution

Case 7475 - adbfm.exe no longer crashes dg8 job when viewing system or user default library list.  USRLIBL system value only handled 25 entries – changed to 250, like iSeries jobs.
Case 7426 – DataGate no longer produces an exception (SQL OLE DB error) on a READ of SQL table/view after the file's RecCount property is used in an assignment statement before the READ.
Case 7445 – Work-around for Locking behavior broken by changes Microsoft made to SLQ Server 2005/2008.  In SQL Server 2005, cursor scroll locks acquire a lock upgrade from S (Shared) to U (Update), unless a higher lock hint is specified in the query.  SQL Server 2000 transparently adds a U lock hint for scroll lock cursors. The SQL Server 2005 behavior allows for better concurrency but opens up the chance of deadlocks for concurrent cursors.  Add the UPLOCK hint, along with the existing ROWLOCK hint, for SQL 2005/208 to behave as SQL 2000 with respect to record locking.
C
ase 6974 - DataGate Explorer now notifies user of an error, if one occurs, when setting the object text by catching cpf9800 series exceptions to raise dgError.
Case 6946 - Runtime error “1119 - the 'To' file could not be created” occurred in applications using DGCpyFile where the source and target library is different in a SQL database after upgrading DSS to 8.1.467.  The INFORMATION_SCHEMA.COLUMNS gets column info from current catalog, so the batch 'USE ...' was added in the query.

Case 7500 - Temporary solution to replace binary 1s (*HIVAL) with column's collation highest sort order value.  As this is a temporary solution, only the following collations are currently recognized; any others will default to the same behavior as before.

Latin1_General_BIN

SQL_Latin1_General_CP1256_CI_AS

Latin1_General_CI_AI

SQL_Latin1_General_CP1257_CI_AS

Latin1_General_CI_AS

SQL_Latin1_General_CP437_BIN

Latin1_General_CS_AI

SQL_Latin1_General_CP437_CI_AI

Latin1_General_CS_AS

SQL_Latin1_General_CP437_CI_AS

SQL_Latin1_General_CP1_CI_AI

SQL_Latin1_General_CP437_CS_AS

SQL_Latin1_General_CP1_CI_AS

SQL_Latin1_General_CP850_BIN

SQL_Latin1_General_CP1_CS_AS

SQL_Latin1_General_CP850_CI_AI

SQL_Latin1_General_CP1250_C1_AS

SQL_Latin1_General_CP850_CI_AS

SQL_Latin1_General_CP1251_CI_AS

SQL_Latin1_General_CP850_CS_AS

SQL_Latin1_General_CP1253_CI_AS

SQL_Latin1_General_Pref_CP1_CI_AS

SQL_Latin1_General_CP1254_CI_AS

SQL_Latin1_General_Pref_CP437_CI_AS

SQL_Latin1_General_CP1255_CI_AS

SQL_Latin1_General_Pref_CP850_CI_AS

Case unknown - Set correct binding parameter in getDependents.
Case unknown - Set current database before call to populate user defined data types.
Case 7113 - Updated protocol version for revised boolean field handling.
Case 7113 - Used put/get "short" routine to marshal boolean field data in C++.


 
Features and fixes incorporated into this build (since Version 8.1.469)
- Fixed Case 6782: Disallow opening a SQL DBName pointing to an instance of SQL that has not had ASNA Stored Procedures installed. Feature implemented. The application now returns error 1501 when opening a database client connection to a SQL Server instance that has not been configured with DataGate support.
- Fixed Case 6850. DSS 8.1 install does not work with SQL 2000 instances. Issue resolved. We now use fully qualified name for master.information_schema.routines or the query will fail if the connection has something other than 'master' for the default database.ection has something other than 'master' for the default database.
- Fixed Case 6583: Open/New GamePlan dialog's "Show only GamePlans" setting is not retained. It was observed that for a New GamePlan or Open GamePlan dialog box the "Show only GamePlans" option is checked. Cocoon remembers that setting until Cocoon is closed.  Then when the Cocoon is re-started the option is unchecked again. Issue resolved.


Features and fixes incorporated into this build (since Version 8.1.467)
-  Fixed Case 6583. Open/New GamePlan dialog's "Show only GamePlans" setting is not retained. It was observed that when the "Show only GamePlans" option is checked, Cocoon remembers that setting until Cocoon is closed.  Then when Cocoon re-started the option is unchecked again. Issue resolved.

   
Features and fixes incorporated into this build (since Version 8.1.464)
-  Optimized COM interface allocations and cache key accessors to prevent heap fragmentation.
- Fixed Case 6476. When using AdgFactory.ReadXml() to create a printfile the containerPath is being ignored. Issue resolved by including database name (aka library) in DBID for CreateTable to ensure table gets created in proper database (library).
- Fixed Case 6440. IFileObject Duplicate function does not copy text property when connected to a SQL server-DSS 8.1.465 and client 8.1.430. Issue resolved..
- Fixed Case 6330. CreateDuplicateFile fails when source library resolves to QTEMP from *LIBL. It was observed that when attempting to use the CreateDuplicateFile class from ASNA.Monarch.ClProgram, a "not found" exception is created on the second attempt to copy a file into QTEMP (with a different name). This same program works correctly against Datagate for iSeries and Datagate Server Engine.  This only affects Datagate for SQL Server installs. Issue resolved we need to resolve *LIBL and QTemp attribute earlier in the class hierarchy and ssFileObject::duplicate method needs to use non-qtemp adorned name for PAL class methods.
- Fixed Case 6337: Provide connection pooling assistance for QTEMP clean up. Implemented a new RPC, ResetConnection to allow the servers to handle QTEMP clearing, etc.
- Fixed Case 6309: Clearing physical file member fails with OLEDB error 1517. It was found that when attempting to clear member it fails with OLEDB Error: "MSSQL: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name." Issue resolved by Handling possible null schema/owner name when constructing qualified name.
- Fixed Case 2862: OPNQRY in ADBFM not correctly returning records falling within a DATE(*USA) date range. It was found that when using menu option "Open Query" in ADBFM and querying files with DATE(*USA) format doesn't return all records within date range if the lower and upper month/day ranges are before all of records within a year. Issue resolved by supporting Date(*USA) comparisons in OpenQueryFile select/omit expressions.

 


 Features and fixes incorporated into this build (since Version 8.1.444)

- Fixed Case 6309: Clearing physical file member fails with OLEDB error 1517. It was found that when attempting to clear member it fails with OLEDB Error: "MSSQL: An object or column name is missing or empty. For SELECT INTO statements, verify each column has a name." Issue resolved by Handling possible null schema/owner name when constructing qualified name.
- Fixed Case 2862: OPNQRY in ADBFM not correctly returning records falling within a DATE(*USA) date range. It was found that when using menu option "Open Query" in ADBFM and querying files with DATE(*USA) format doesn't return all records within date range if the lower and upper month/day ranges are before all of records within a year. Issue resolved by supporting Date(*USA) comparisons in OpenQueryFile select/omit expressions.
- Fixed Case 6235. Attempt to create a SQL logical file as UNION of two tables fails with Error. When creating a keyed UNION of two tables in SQL2K. In ADBFM, attempt to create a SQL logical file as UNION of two tables fails with Error 1517 (syntax error) in ADBFM. Issue resolved. We now need to handle SELECT sub-expressions inside a SELECT statement in the mini-parser.
- Fixed Case 6227: Creating a SQL join logical on three tables results in errors in ADBFM.exe. Issue resolved by adding new ICommandText to issue second Sql command query for primary base metadata.
- Fixed Case 4528: Allow the 'rebuilding access path' dialog to be minimized.
Fix is in two parts.
Part 1: The "AutoRecover" database label option is extended to cover client-initiated opening of "dirty" objects. If the option is enabled, then automatic recovery is performed. If the option is disabled, then the client will receive an error indicating the object cannot be opened. The object will stay "broken" until manually fixed via the appropriate tool.
Part 2: If automatic recovery is in effect, feedback data will be logged to the server's application event log instead of being sent back to the requesting client. Thus, no popup window will appear on the clients display. The initiating client will not receive a response until recovery has completed with the result determined by whether or not the recovery operation was successful.
- Default to dgPalAtlas during construction; needed for database recovery during system service initialization.
-Fixed Case 6111. Check for non-standard default values for char fields and fix for dg8.
- Fixed Case 6034. Workaround the ambiguity of the "override name" attribute of reference fields. That is, override the reference field name with the given name, even if the "override name" field is not set to true, if the given name is different than the reference field name.
- Fixed Case 5846. Resolve *LIBL with QTemp in list. It was observed that files in QTemp were not being resolved via *LIBL with QTemp in the list. Issue resolved.
- Fixed Case 5822 File not found when using user portion of *LIBL. It was observed that *LIBL was no longer working in DSS 8.1. It was tested both in AVR classic and AVR.NET on three separate machines against SQL 2k and 2005. If the library name was hardcoded, the code compiles/runs but if you use *LIBL, it fails with a file not found error. Issue resolved.
- Fixed Case 5759. Can not work with or create database names in SQL with DB Manager. Issue resolved by supporting SQL database names as delimited identifiers.
- Fixed Case 5699: DeleteRange leaves object lock on (next) record. It was observed that when using DeleteRange, it appears the last deleted record plus one is still locked. Even if there are no records found in the DeleteRange, a record remains locked. Issue resolved by making sure that when a "range mode" check fails on a newly-read record, release the record lock, if any.
- Fixed Case 5942: DataGate client drops last message of multi-message RPC response. Issue resolved by changing client to read the RPC message header and use the header's message length to read the correct number of message data bytes.
- Fixed Case 5161: Remove or fix "Q" accelerator key in QTEMP database name assignment - 8.1.441. Issue resolved by removing Alt+Q accelerator key. It was observed that its association with a sometime disabled edit control would lead to unintentional closing of the dialog.
- Fixed Case 5898: DataGate does not accurately store or retrieve *HIVAL character values in database files when Italian character sets are in use. Issue resolved by implementing the following. Screen all character fields for *HIVAL when a character data area of length one or greater, and named "CHARHIVAL", exists in the installation library. For future expansion, all characters in the data area should have the value ' ' (EBCDIC 0x40). After creating the data area, restart dg400. When screening, if a character field consists of entirely *HIVAL values, don't use the Unicode translator but rather pass on as the *HIVAL constant (0xff or U+FFFF).
- Notice - Ole/db type DBTYPE_BOOL must be tested with VARIANT_TRUE rather than Win32 TRUE (they're different).
- Fixed Case 5846. Resolve *LIBL with QTemp in list. It was observed that files in QTemp were not being resolved via *LIBL with QTemp in the list. Issue resolved.
- Fixed Case 5822 File not found when using user portion of *LIBL. It was observed that *LIBL was no longer working in DSS 8.1. It was tested both in AVR classic and AVR.NET on three separate machines against SQL 2k and 2005. If the library name was hardcoded, the code compiles/runs but if you use *LIBL, it fails with a file not found error. Issue resolved.
- Fixed Case 5824: DSS cannot find Print Files using *LIBL. It was observed that if a program attempts to run or compile against a printfile using *LIBL, an error is thrown "Invalid Object Name" The LIBL entry did exist in the system portion of the library list, and it the program was bale to find other physical and logical files needed to compile. The problem appears to be specific to printfiles. This appears to affect both OLE and .NET printfiles. Issue resolved by always resolving *LIBL in object constructors.
- Fixed Case 5719: Stored Procedure dialog not providing all SQL instances correctly. It was observed that when selecting SQL instances for installation of DSS stored procedures duplicate SQL instances were appearing in dialog. Issue resolved. All available SQL instances including the SQL 2000 instance will now be listed in the dialog.
- Fixed Case 5690: Copying physical file with *FIELDREF file reference from DSS to DG400 fails with errors. Issue resolved. The consensus of the DataGate group remains that "round tripping" of database objects between DSS and the other servers is not generally supported. In this case, we have provided limited support to accomplish the user's task. By design, all DSS physical files include the special reference file, "*FIELDREF". When such a file is created by copying the file definition to dg400, the creation fails because *FIELDREF is an unknown object. In this case, dg400 can and will ignore any reference file named *FIELDREF, and create the file normally. The reference to *FIELDREF will be lost in the new file.
- Fixed Case 5695: SQL logical file creation failure causes adbfm to display garbled error message. Issue resolved and we now use correct message table for sql errors.
- Fixed Case 5278. Microsoft Update KB936357 does not allow restore/save operation to display final confirmation (hangs). Modify the "save" function in the same way as the "restore" function was modified in the prior check-in. Issue resolved.
- Fixed Case 5589. Please change Datagate/400 license screen to reflect correct build. Changed prompt text to reflect the "current" version rather than a specific, possibly outdated version.
- Case 5278. After applying one of the following Microsoft updates to a Windows 2003 Sp2 Server, the restore/archive function of adbfm.exe no longer displays the confirmation screen and the application just hangs until it is manually ended. Issue resolved by adding a thread switch between the last streaming-mode packet sent and the final result packet. This apparently lets Windows recover from the undiscovered timing anomaly that is causing the bug.
- Case 4497: It was observed that multiple connections to the database engine were sharing the same QTEMP. This allowwed the desktop database utilities such as ADB Database Manager and File Editor to work together along with other applications. However the down side to it was that the web-based applications which naturally should receive an unique QTEMP for each connection were not receiving it. In order to rectify this we have implemented new database label option to use a private QTemp library for each connection.
 

  
Features and fixes incorporated into this build (since Version 8.1.458)
- Fixed Case 6235. Attempt to create a SQL logical file as UNION of two tables fails with Error. When creating a keyed UNION of two tables in SQL2K. In ADBFM, attempt to create a SQL logical file as UNION of two tables fails with Error 1517 (syntax error) in ADBFM. Issue resolved. We now need to handle SELECT sub-expressions inside a SELECT statement in the mini-parser.
- Fixed Case 6227: Creating a SQL join logical on three tables results in errors in ADBFM.exe. Issue resolved by adding new ICommandText to issue second Sql command query for primary base metadata.
- Fixed Case 4528: Allow the 'rebuilding access path' dialog to be minimized.
Fix is in two parts.
Part 1: The "AutoRecover" database label option is extended to cover client-initiated opening of "dirty" objects. If the option is enabled, then automatic recovery is performed. If the option is disabled, then the client will receive an error indicating the object cannot be opened. The object will stay "broken" until manually fixed via the appropriate tool.
Part 2: If automatic recovery is in effect, feedback data will be logged to the server's application event log instead of being sent back to the requesting client. Thus, no popup window will appear on the clients display. The initiating client will not receive a response until recovery has completed with the result determined by whether or not the recovery operation was successful.
- Default to dgPalAtlas during construction; needed for database recovery during system service initialization.
-Fixed Case 6111. Check for non-standard default values for char fields and fix for dg8.
- Fixed Case 6034. Workaround the ambiguity of the "override name" attribute of reference fields. That is, override the reference field name with the given name, even if the "override name" field is not set to true, if the given name is different than the reference field name.
ixed Case 5846. Resolve *LIBL with QTemp in list. It was observed that files in QTemp were not

  
 Features and fixes incorporated into this build (since Version 8.1.453)
- Fixed Case 5846. Resolve *LIBL with QTemp in list. It was observed that files in QTemp were not being resolved via *LIBL with QTemp in the list. Issue resolved.
- Fixed Case 6005:  Stored procedure missing for "latest" dgserver.exe. Missing stored procedure sp_ASNA_ResolveLibl3 added.
- Fixed Case 5699: DeleteRange leaves object lock on (next) record. It was observed that when using DeleteRange, it appears the last deleted record plus one is still locked. Even if there are no records found in the DeleteRange, a record remains locked. Issue resolved by making sure that when a "range mode" check fails on a newly-read record, release the record lock, if any.
- Fixed Case 5942: DataGate client drops last message of multi-message RPC response. Issue resolved by changing client to read the RPC message header and use the header's message length to read the correct number of message data bytes.
- Fixed Case 5161: Remove or fix "Q" accelerator key in QTEMP database name assignment - 8.1.441. Issue resolved by removing Alt+Q accelerator key. It was observed that its association with a sometime disabled edit control would lead to unintentional closing of the dialog.
- Fixed Case 5898: DataGate does not accurately store or retrieve *HIVAL character values in database files when Italian character sets are in use. Issue resolved by implementing the following. Screen all character fields for *HIVAL when a character data area of length one or greater, and named "CHARHIVAL", exists in the installation library. For future expansion, all characters in the data area should have the value ' ' (EBCDIC 0x40). After creating the data area, restart dg400. When screening, if a character field consists of entirely *HIVAL values, don't use the Unicode translator but rather pass on as the *HIVAL constant (0xff or U+FFFF).

  
Features and fixes incorporated into this build (since Version 8.1.446)
- Fixed Case 5822: File not found when using user portion of *LIBL. It was observed that *LIBL was no longer working in DSS 8.1. It was tested both in AVR classic and AVR.NET on three seperate machines against SQL 2k and 2005. If the library name was hardcoded, the code compiles/runs but if you use *LIBL, it fails with a file not found error. Issue resolved.
- Fixed Case 5824: DSS cannot find Print Files using *LIBL. It was observed that if a program attempts to run or compile against a printfile using *LIBL, an error is thrown "Invalid Object Name" The LIBL entry did exist in the system portion of the library list, and it the program was bale to find other physical and logical files needed to compile. The problem appears to be specific to printfiles. This appears to affect both OLE and .NET printfiles. Issue resolved by always resolving *LIBL in object constructors.
- Fixed Case 5719: Stored Procedure dialog not providing all SQL instances correctly. It was observed that when selecting SQL instances for installation of DSS stored procedures duplicate SQL instances were appearing in dialog. Issue resolved. All available SQL instances including the SQL 2000 instance will now be listed in the dialog.
- Fixed Case 5690: Copying physical file with *FIELDREF file reference from DSS to DG400 fails with errors. Issue resolved. The consensus of the DataGate group remains that "round tripping" of database objects between DSS and the other servers is not generally supported. In this case, we have provided limited support to accomplish the user's task. By design, all DSS physical files include the special reference file, "*FIELDREF". When such a file is created by copying the file definition to dg400, the creation fails because *FIELDREF is an unknown object. In this case, dg400 can and will ignore any reference file named *FIELDREF, and create the file normally. The reference to *FIELDREF will be lost in the new file.
- Fixed Case 5695: SQL logical file creation failure causes adbfm to display garbled error message. Issue resolved and we now use correct message table for sql errors.
- Fixed Case 5278: Microsoft Update KB936357 does not allow restore/save operation to display final confirmation (hangs). Modify the "save" function in the same way as the "restore" function was modified in the prior check-in. Issue resolved.
- Fixed Case 5589: Please change Datagate/400 license screen to reflect correct build. Changed prompt text to reflect the "current" version rather than a specific, possibly outdated version.
- Fixed Case 5278: After applying one of the following Microsoft updates to a Windows 2003 Sp2 Server, the restore/archive function of adbfm.exe no longer displays the confirmation screen and the application just hangs until it is manually ended. Issue resolved by adding a thread switch between the last streaming-mode packet sent and the final result packet. This apparently lets Windows recover from the undiscovered timing anomaly that is causing the bug.


Features and fixes incorporated into this build (since Version 8.1.444)
- Case 4497: It was observed that multiple connections to the database engine were sharing the same
QTEMP. This allowed the desktop database utilities such as ADB Database Manager and File Editor to work together along with other applications. However the downside to it was that the web-based applications which naturally should receive an unique QTEMP for each connection were not receiving it. In order to rectify this
we have implemented new database label option to use a private QTemp library for each connection.

Features and fixes incorporated into this build (since Version 8.1.441)

- Case 5196: The SQL Service Instance dialog defaulted to [local] even though there may not be a default instance or there is a default instance but it cannot be detected. Issue fixed. We now only show instances on local machine that have been enumerated (includes default instance).
- Case 5192: When going against any version of DataGate server we would get a "TCP/IP connection terminated unexpectedly" error because Key part counts and *HIVAL key were not transmitted correctly. The issue has now been fixed.
- Case 5180: When SQL was the target database it was observed that we could not create a gallery. It would come up with an error like "Failed to Create new database schema .....". Issue has now been fixed. It was found that there was a need to bracket key field names during creation in case they are SQL reserved words.
- Case 5176: Password field text was visible . The password field just needed to be masked by applying the password property to the field. Issue has now been fixed.
- Case 5164: If you attempted to delete any file (logical, physical, print file) from DSS 8.1.441 running against SQL 2000Sp4, the attempt failed with an error. The issue has now been fixed. Please note that we must use legacy syntax for select top for SQL 2000 compatibility.
- Case 5161: The "Q" accelerator key in QTEMP database name assignment was underlined giving the impression that Pressing Alt+Q is the same as clicking OK. It was just a typo that has now been fixed.
- Case 5160: Set the default Database to be used as QTemp library to "QTEMP". Previously we were allowing the user to leave the database name BLANK. We are now forcing the user to make an overt decision to enable or disable QTemp library support. We default the SQL database name for QTemp library to QTEMP and we do not allow the database name to be blank.
- Case 5149: Duplicate object function returned and "invalid operation" error. Issue has now been fixed. The New behavior of Duplicate rpc is to always duplicate members.
- Case 5067: Implement duplicate object for dgFiles with OS/400 crtdupobj modeled behavior. We have customers who are wanting to run (either for testing or demonstration purposes) Monarch migrated applications with Atlas as database server. So we need to Add Support to copy Members and Data to the Duplicate method of dgFile so that we can honor the dgDupOptionSet dgDF_Data flag. Issue has now been fixed.
- Relabelled the buttons OK to Install, and Cancel to Done.

Features and fixes incorporated into this build (since Version 8.1.439)
 
- Case 5104: There was a need to create indexes via Sql command since Ole/Db does not support creation of indexes with descending keys
- Case 4712: Implemented Create Duplicate Object for Sql Logical files.

Features and fixes incorporated into this build(since Version 8.1.436)
 
- Case 5064: Ability to handle path names containing a mix of file separators.
- Case 4712: Implementation of Create Duplicate Object for physical files.
- Create logical file in requested database rather than database of first base file.
- Case 5028. Fixed logic error in code that replaces the default path separator-character string with the peer's separator character string.
- Case 4995: All instances of lowercase CL command string constants and printf formats will be replaced with uppercase CL commands.
- Case 5028. Ability to utilize the separator character string sent by the client
- Case 5010. Field reference name may be non-null but zero length.

Features and fixes incorporated into this build (since Version 8.335)
 
- Use ResourceVersionInfo.h as source for Product and File version.
- Handle identical table names in different schemas within the same database. Handle table names with embedded special chars.
- Case 4893: When using DG Print File Designer if we open the attached Print file and save to SQL Server an error was returned as "The operation cannot be completed. We are now handling "Domain\User" form of schema names correctly.
- When Installing Stored Procedures the program was exiting when it encountered problems. It now displays a message and returns to the dialog box
- QTEMP Support is now added
- Case 4614: Fixed the issue with dgserver crashing when attempting to work with files that exceed 31 chars
- add /LARGEADDRESSAWARE linker switch to dgServer.exe
- Fix leak introduced with mdRowset class usage
- fix minor glitch from last merge branch
-Control ordering of accessor release by including accessor handling in rowset class.
-Case 4478: plug SqlVersion BSTR leak and delay opening SqlDMO until actually needed.
-Don't override OleDB error with dgEgBADFDEF.
-Make BSTR array a CComBSTR array to plug BSTR leak.
- Define template specialization std::less to allow dgString to be the key field of a std::map.
-Always delete array; may have been newed as 0 length array.
-Return dgAuthorityEntry array rather than dgAuthorityEntryEx
-More DMO to OLEDB conversions.
getKeyFields,getFieldsText,setFieldsText,getObjectText,setObjectText,getBaseTables,setCreateAttr
-Use new classes mdAccessor and mdRowset to automate resource release for OLE DB data management.
- Fix Case 4392: DSS leaks memory when file open and closes
Because CComBSTR constructor doesn't take control of BSTR argument, added a call to Attach.
-Plug some OLE DB resource leaks.
 
Features and fixes incorporated into this build (since DSS 8.0)
  • (4019) Attempting to copy a file from one library (database) to another in SQL2005 would fail (ADBFM or DGCpyFile).
  • (4248) Attempt to access SQL Logical with key field cast as different length of existing field would fail
  • (4302) Error was not being returned to client when a logical file's base files not found
  • (4321) DataGate Print File was not successfully being saved to SQL Server
  • (4392) DSS would leak memory when file open and closes
  • Reliance upon SqlDMO has been eliminated when opening files (tables & views).
  • Allow multiple SQL server instances to be installed with ASNA stored procedures and tables

 DataGate 8.1 for SQL Server Downloads - (Series Items)

Access denied. You do not have permission to perform this action or access this resource.