Release Notes for ASNA DataGate® for SQL Server Classic Release 5.0 - Build 7.133.1.1

Contents

Issue connecting to SQL Server after installing Windows XP Server Pack 2

SQL Server Issues

Database Issues

New Features

Bug Fixes

Known Issues 

 

Issue connecting to SQL Server after installing Microsoft Windows XP Server Pack 2

 

There is an issue with connecting to SQL Server after applying 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 2000 (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.

Error you will receive:

The error message shown below in Figure 1 is error message you'll receive if you encounter this error. You'll receive this error attempting to connect to SQL Server with either SQL Server's own Enterprise Manager or with ASNA's DataGate for SQL Server (DSS).

 

Resolution:

After upgrading XP Professional with Service Pack 2, there are changes that are need to be made to XP's firewall settings to allow SQL Server 2000 to be able to communicate with the Firewall features in XP Professional. 

Please consult with Microsoft or your Network Security Administrator before making any changes. These changes impose security-related issues that should be fully assessed for your environment.

More Information:

Click here for the article on http://developer.asna.com.

Click here for more general information.

Click here for Microsoft's recommended steps to resolve this problem.

Back to Top

 

SQL Server Issues

 

There are important issues, limitations and considerations of SQL Server when it comes to objects, indexes, data access, locking, fields, and join considerations.  Please refer to the following files for additional, important information.

Differences_DG400_and_DSS.htm - Contains a listing of the Differences between Acceler8DB, DataGate for DB2/400 (DG400) and DataGate for SQL Server (DSS).   

Porting_AVR_to_DSS.htm - Contains some SQL Server restrictions and the process to convert your AVR applications to access SQL Server databases.

0DSS.htm - Contains some programming considerations when converting your AVR applications to support SQL Server.

Back to Top

 

Database Issues:

 

ADB 4.7 and ADB 5.0 cannot co-exist on NT Server

Even if you install ADB 5.0 into a different folder than ADB 4.7, there is only one service (adbntsvc).  The last version installed will install the service and that service will point to the version you installed last.

Backup your Databases!!!

As with any other information you keep on a PC, you should make sure that you keep 'current' backups of your data.  If you have ever run a program like CHKDISK you will notice that sometime 'clusters' get damaged on FAT file systems.  Keeping a good backup outside of your PC will enable you to recover from a disk failure.

Back to Top

 

New Features in ADB 5.0

 

Here is a list of the main new features found in Acceler8DB release 5.0:

SQL Server Support

With ADB's SQL Server support, access to SQL Server is provided via standard RPG file I/O operations such as CHAIN, SETLL and READ.

Through Acceler8DB, you can use such features as QTEMP, libraries, Open Query File and native iSeries 400 data types (such as packed) with SQL Server.  You can access existing SQL databases, or create new SQL Logical databases.

Database Connection Pooling

When database connection pooling is enabled, the communication to the server and to the server resources are kept in a special ‘pool’.  The next time the application requires database services, one of the available connections in the ‘pool’ is assigned to it.  Thus, enabling Database Connection Pooling results in faster database connections.

Multi-Threaded Environment

Each ‘thread’ of every process gets a separate connection to the server.  When the application closes the database, the connection goes away, along with its corresponding support on the server.

Null Field, Unicode Field and Variable Length Field Support

This release allows the support of null fields, Unicode fields, and variable length field support. 

Copying and Renaming DDS Files

You can now copy and rename DDS files from the QTEMP library.  This is done by selecting the DDS tab within Tools – Options.  When a file is copied and created on an AS/400, a Data Description Specification file (DDS) is created in a library called QTEMP.

Back to Top

 

Bug Fixes:

ADB, DSS & DCS 5.0 Bug Fixes 7.69 and above:

Bug Fixes:

ADB, DSS & DCS 5.0 Bug Fixes 7.46 – 7.69:

·         ADB:  When a sequential (Next, Previous) read failed because the record was locked, the cursor 'position' was not being maintained.

·         ADB:  PrintFile could not be copied nor created when it contained an empty format.

·         ADB:  DBDef Control:  ChangeDatabaseLocation function would always fail with result code -1.

·         ADB:  DBDef Control:  Changing User-ID or Password of a *Public database name would incorrectly create a new private database name.

·         ADB:  READE would return "Input String was not in a correct format" when accessing an AS/400 join logical file with concatenated fields that consisted of Character and Packed data types.

·         ADB:  Archive restore was requiring the “.dga” file extension to be all lower case.  It is now case insensitive.

·         DG8:  Using READP with OPENQRYFILE with no keys and Org( *Arrival ) would sporadically fail.

 

ADB, DSS & DCS 5.0 Bug Fixes 5.1200.1.33 – 7.46

·         ALL:  ADB COM and ADB .NET support for ADB 5.0 now share the same version numbering:  7.46

·         DCS: Running an app in the IDE with an unlicensed DCS issues the wrong error message.

·         DCS: Attempting to read a file without opening it would crash the IDE.

·         DCS: Entering an empty string for the Source.Profile would crash the application.

·         DCS: New IFileContent interface added to allow override of File, Record and EOF wait times.

·         DCS: EOF would be incorrectly set on the second record during a ReadEqual loop.

·         ADB: (ADBFEDIT) Changing a record containing a negative zoned field with zero decimal places would contain 10 times the previous contents.

·         ADB: ADBFM would crash when clicking the Add Field of a Field Reference file.

·         ADB: ADBFM now allows ability to change column headings of referenced fields.

·         ADB/DCS: (Archive control - RestoreWithOptions) Archive restore now allows omission by file type.  e.g., Restore all files, but omit Logicals.

 

ADB, DSS & DCS 5.0 Bug Fixes 5.1194 – 5.1200.1.33:

·         ADB: Define 5 types of CopyData :

1) Format IDs must be identical.

2) Map and preserve field precision.

3) Map and allow field truncation.

4) Map and drop missing fields.

5) Byte for Byte .

 

  ADB, DSS & DCS 5.0 Bug Fixes 5.1182 – 5.1193:

§         DCS: Creating a new file in SQL Server would raise "Uninterpreted SQL Error".

§         DCS: IDatabaseObject.SubType was returning dgUS_Unknown for a print file instead of dgUS_OlePrint.

§         DCS: The FileAttributes status of a file was not being preserved when copying as a cloned file.

§         DCS: Bases collection object is now correctly non-creatable. 

§         DCS: A SQL Server file opened with *LIBL in path resulted in "Uninterpreted SQL Error"

§         DCS: Using the fileContent.source to return a copy of that source object for use in setting the source of a new object was working incorrectly.

§         DCS: Print preview and Macro processing components (splview.ocx & splviewer.exe) were not being found even though they were in same folder as adbactvx.dll.

§         DSS: In a Case sensitive SQL Server instance, a file with a mixed case key fields would create "field not found" error in Database Manager file editor.

§         DSS: Unexpected Exception Error would occur in Database Manager when selecting field reference file in a SQL Server library.

§         DG/400: AS/400 SQL logical files were not being correctly reported to AVR.  Note:  AS/400 SQL Logical files are not supported by DG/400.

ADB, DSS & DCS 5.0 Bug Fixes 5.1172 – 5.1181:

§         DCS: When a zoned database field contained a negative value, the Fields.Value property did not interpret the field content as being negative.

§         DCS: When attempting to connect to a database with the SourceProfile object and the content of label property was not set, the error raised by DCS was "File not found" instead of "Database label not found".

§         DCS: Attempting to connect to Local SQL Server database via SourceProfile object would incorrectly result in "Cannot connect to database license server" error. 

§         DCS: When reconnecting to a data source using SourceProfile object (whether prior connection was successful or not) resulted in "Channel Busy" Error. 

§         DCS: When running in VB6, the application would crash if the SourceProfile.Password was set from an empty textbox control.

§         DCS: When running in AVR, updating a decimal field would result in the error: "The value specified contains too many decimals to be contained by the field".

§         DSS: Corrected installation and access to a "case sensitive" SQL Server instance.

§         ADB: Improved error message when cannot remap record format for AVR's CHKFMTID(*MAP) option.  Changed from “Invalid field definition" to  "Cannot remap field in file description".

§         ADB: ADBFM's natural language translations were being applied to the field types (e.g., *Packed to Spanish's *Empacado) causing the wrong data type to b applied to a field definition.

 

ADB, DSS & DCS 5.0 Bug Fixes 5.1109 – 5.1171:

·         DCS: Creating a logical with a Select/Omit would crash DCS.

·         DCS: Added FileContent.SetFormat for reading exclusive format in multi-format logical.

·         DCS: Added "write caching" using dgFA_WriteCache access mode [ like AVR's CacheWrites & NetBlockFactor combination ]. 

·         DCS: Added FileContent.Synchronize method for flushing/dumping a network blocking cache [ like FEOD on AS/400 ]. 

·         DCS: Added FooterSize, and other properties to PrintFileContent.

·         DCS: Added StartNewDocument (Reset) method for forcing end-of-document on an open print file [ like AVR's FEOD Reset(*yes) ].

·         DCS: Removed redundant methods/props from PrintFileContent (seek, etc.). Note that this change BREAKS EXISTING CODE that uses print files, possibly others...

·         DCS: Added Commit and Rollback methods to Source object.

·         DCS: Added recognition of XML string to define multiple Base Files in Member.CreateLogicalFile method

·         ADBFM: Users can no longer create a "secure" ADB database.

·         ADBFM: Had trouble copying DDS when copying a directory.

·         ADBFM:  Added a "YesToAll" option for the DDS prompt dialog. Now the members that have already been copied will be removed from the QDDSRC in QTEMP.

·         ADBFEDIT would not remember Query and KeyFields in command line.

·         DSS: Added more error checking when opening a print file definition.

·         ADB File Manager and ADB Definition Control would stop enumerating database names when a bad database name was found.

·         ReadRange and SetRange were not correctly handling keys in descending order.

·         ADBFM was crashing when encountering an invalid Logical file.

·         ADB File editor:  Changed the way Hex fields are handled in the "edit" field dialog. Also, added support for DBCS fields for the "edit" field dialog.

·         DCS: Variable length Hex fields were being handled incorrectly.  The hex string was being read from the file with extraneous data.

·         DCS: Print file *File properties were being reset.  Now, unless PrintFileContent properties are set, DCS retains the *file defaults.

·         DCS: DG/400 was issuing wrong error when attempting to update a record when access mode was not update. 

·         ADBFEDIT would lock records even though it was in browse mode.

·         ADBFM would crash when viewing permissions of an object with the "Child Objects" check box selected.

·         Print file dimensions exceeding 12 inches were being returned as negative values.  Dimension can now be 25 inches.

·         Working with an invalid logical file would crash ADBFM.

·         READRANGE & SETRANGE were incorrectly handling descending keys – Acclere8DB and DG/400 only.  (This is to be resolved with DSS in next release).

·         Acceler8DB Engine was not allowing the current record to be unlocked multiple times.

·         Acceler8DB was returning error condition on SETLL with key = *start or *end was executed upon an empty file.

·         AddNameDSS and the RegisterNameDSS methods were added to the DBDEF control  (adbctls./ocx).

·         Running ADBFM's Tool > Check File option would trash the ADB connection.

·         ADBFM’s Tool > Check File option was non-functional in ADB 5.0 engine.  Now it works again.

·         ADBNTSVC.EXE was leaking memory whenever retrieving a file’s reference.

·         Querying a file and not specifying QRYKEYFLDS parameter caused AVR to hang when attempting to read the file.

·         ADBFEDIT was providing Search option for RRN view when there is no way to search.

·         SetRange/Read and ReadRange/Read operation was being terminated with EOF if Write, Update or Delete commands were executed on same file from within the loop.

·         Using ADBFM’s Copy Data or AVR’s dgCPYFILE from one AS/400 to another AS/400 would terminate with erroneous error message.

·         Copying files from Acceler8DB or SQL Server to an AS/400 reported bogus error message when file or member names exceeded AS/400’s 10 character limit.

·         Attempting to create a logical view with no duplicates allowed over a base file with duplicate keys was crashing DG.

·         Open or Close of any DB file was leaking some memory - more if NetBlocking

·         DSS was issuing confusing error message when the logical file contained a SQL Statement of the form 'SELECT TOP 100 PERCENT ... ORDER BY (X)' and then stated that the logical file was indexed by X.  This combination is not supported by DSS.  If the file is to be indexed by X, then it is not necessary, nor allowed to provide an ORDER BY clause in the statement.

·         DSS: Implemented ReadE with no key.

·         DSS: Native SQL timestamp (rowversion) data type was not being correctly supported.

·         DSS: Issue understandable error message: "SELECT statements with the ORDER BY clause are not allowed in INDEXED logical files”.

·         DCS: PrintFile field assignments would leave text remaining from previous assignment.

·         DCS was incorrectly writing integer data to a file when using VB.

·         DCS: Print file processing was incorrectly handling decimal data fields in the format.

·         DCS: To accommodate .NET’s Interop, DCS now passes Hex values as string representation of the hex value.

·         DCS fileContent object leaked memory whenever an I/O operation would encounter runtime errors.

 

ADB, DSS & DCS 5.0 Bug Fixes Through 5.1108:

·         DSS: License manager was not correctly counting and maintaining licenses.

·         DSS: READ following SETRANGE where the range defined an empty set of records wasn’t correctly returning EOF w/DSS.

·         DSS: No error was raised if needed ASNA supplied SQL Server 2000 stored procedures were missing.

·         DSS: The time required to open SQL Server 2000 database files via DSS has been reduced significantly.

·         DCS: The SetNew method for the Record object was incorrectly initializing all fields in a Record to null".  Now, SetNew initializes fields based upon their data types (behavior is same as AVR’s CLEAR command).

·         ADB Client:  Opening data files would leak memory.  (Behavior was restricted to the client machine without regard to the database engine employed).

·         DG iSeries/400:  Using ADBFM to modify creation attributes of an AS/400 file resulted in “Error 602 Library not found.”

·         READE command with no key given would result in an ADB client runtime error of "Invalid Argument”.

 

AS/400 Only:

·         Correctly interpret timestamp field metadata.

Back to Top

 

Acceler8DB Known Issues:

 

There is a limitation of 32 Record Formats per Print File.

·         References are lost when restoring a file that has referenced fields.

·         When using adbfedit with a file that contains duplicate keys, records may be skipped when you are browsing the file going forward, then change direction by browsing backward.

Back to Top

6/6/2005