Omnis 7 version 3 Release Notes

May 27, 1994

These version 3 release notes include new features and notes and cautions for version 3 only.

NEW FEATURES IN OMNIS 7 VERSION 3

Client-Server Performance

The key aspect of a client-server design tool is its ability to perform well when you deploy it.  Version 3 emphasizes client-server performance as a major design goal.

Improved Omnis SQL

SQL is the primary language used for access to database servers in client/server application programming.  Omnis 7 version 3 adds support to its prototyping SQL Data Access Module, Omnis SQL, to add many features of standard SQL.

Ease of Use for Client-Server Development

Version 3 substantially enhances the ease of use of the development environment and its look and feel to let customers be more productive in application development.  Enhancements include window prototyping of client/server forms and a large array of database administration tools, including an interactive SQL window and a SQL Object Browser.

New Data Access Modules

Version 3 adds Data Access Modules (DAMs) for Informix for Windows, ORACLE7 and ODBC for the Macintosh, and SYBASE System 10 for Windows and the Macintosh.  As well, there will be just one DAM for ORACLE version 6 and ORACLE7, resulting in much simpler connections to ORACLE databases.

Smaller Runtimes

A smaller Omnis runtime system provides more effective deployment.

More Powerful GUI Design Tools

With version 3, you can more quickly build the GUI applications that your users want.  You are more productive, and your applications will meet with better end-user acceptance when you deploy them.  New tools include an improved tool palette, grouping of fields in windows for editing, Windows-style toolbars, rulers in design windows, window minimization, automatic scaling for monitors with different resolutions, several enhancements to the way you define and control various kinds of fields, field-level data formatting, three-dimensional field effects, the ability to set the initial field on a window, text object scaling, Windows-style combo box keyboard support, and Windows-style help for the Macintosh.

Enhanced Programming Language

As well, there are several enhancements to the Omnis programming language, including a new Pop up menu command, new date functions, color constants, several functions that operate on lists (max, total, average, and so on), and new functions for character translation.  The programming language contains SQL cursors and cursor-based fetching of data from the server.  There is also a new Set transaction mode command for better control over SQL transactions.

Enhanced Reporting Capability

Version 3 provides many new report capabilities that will improve your productivity in generating reports and end-user acceptance of your applications when you deploy them.  Enhancements include rulers and page margin boundaries in design mode; the ability to print multiple, horizontal pages; additional total functions such as average, minimum, and maximum; vertical as well as horizontal field placement; truncated text in fields; automatically shifting fields to accommodate longer text; enhanced label reports; multiple printers in Windows; integration of graphics functions (see below) into report fields; and a new report tool palette.

Business Graphing Tools

Version 3 integrates a complete business graphics system, Omnis Graph, reducing your need to depend on other graphics packages for this common use for Omnis data.

Microsoft Windows Standards (DLLs, OLE 2, MDI Support)

Version 3 provides more support for Microsoft Windows standards such as DLLs, OLE 2, and MDI.

Lotus Notes

Version 3 integrates Omnis applications with Lotus Notes.  This improves interoperability with large, mission-critical applications built around Notes.

Improved Blob Support for Multimedia Applications

Version 3 improves the use of binary large objects (BLOBs) in Omnis applications, leading to a more effective development tool for multimedia applications.


NOTES AND CAUTIONS

This section lists any notes and cautions relevant to Omnis 7 version 3. The section divides the notes into version 3, version 2.2, version 2.1, and version 2.0 for the convenience of existing version 2 users who are updating to version 3, who will have already read the notes and cautions for the previous versions. These customers need to read only the version 3 subsection. 

Customers new to Omnis should read all sections.

Notes identify areas of concern and, if possible, offer workarounds. Cautions are items that may cause more serious problems; a caution bears the 'CAUTION:' label.

Each paragraph normally ends with a reference number such as '(V2/FF/298)'. This identifies the problem in the Blyth faults database.  You can call Blyth technical support to follow up on its resolution.

3.1.	Omnis 7 version 3

Platform Support and Hardware Support

On the Macintosh, Omnis 7 version 3 supports System 6.0.7 and higher releases.  On Windows, Omnis 7 version 3 supports Windows 3.1 and higher releases.  On the Macintosh, there appears to be a problem with reading the Omnis CD using NEC 3xp CD ROM players.

If you are installing Omnis under Novell NetWare, you should set your NET.CFG DOTS option on in your NetWare DOS Requestor:  "SHOW DOT=ON".  This lets you use dots to navigate the file hierarchy.  (GR/TK/006FC)

Data Access Modules

The SequeLink DAM alloctes a 10M fetch buffer for an Omnis character field with the default length of 10,000,000.  However, SequeLink can handle only 4K bytes of data at once, so most of this space goes for nothing.  You should size your character variables mapped to SequeLink to 4K or less. (GR/@K/055FC)

In Omnis SQL, if you build a list from a select table, and the list contains a number data type with decimal places, and a particular value has zero in the decimal places, Omnis displays the data without decimal places.  That is, 20.00 displays as 20.  This does not apply to fields outside a list retrieved through a Map fields to host and Fetch next row command sequence.  (GR/@M/018FC)

INFORMIX stores a NULL value when you bind an empty Omnis character variable, even though INFORMIX can store empty strings.  (GR/@X/006FC)

PL/SQL, used with the ORACLE DAM, does not support Omnis lists as updateable bind variables. (V2/@Q/016)

Passing a SQL script that is 32K long or longer will cause Omnis to crash.  (GR/@A/080FC)

Using the ODBC DAM with Q&E SQL Server ODBC driver, the Describe results command returns no information about null specification for many data types.  (GR/@B/010FC)

Publish and Subscribe

On the Macintosh, you can edit the data you receive from another application by way of Publish and Subscribe; you should not be able to. (GR/AE/002)

SILVERRUN Case Bridge

Sometimes when you import a file format into SILVERRUN using the CASE Bridge you will get an error that SILVERRUN could not read the key (Invalid descriptor:  "key").  To work around this, change the File>>Omnis Preferences>>Options option "Enclose exported text in quotes.  It doesn't matter what the setting is, just that you change it.  (GR/SR/003FC)

Windows

On Windows, if you type a lot of data into a horizontally scrolling entry field, it will wrap around and start writing over data at the beginning of the field.  This results from a limit of 64K pixels per line. (GR/DA/001)

You cannot move border/non_border display fields, as they don't get the focus.  (GR/DD/005)

If you move a divider in a table, Omnis does not update the $posn attribute, which still reflects the position when you opened the window. (GR/NT/025)

The #RETURN message variable maintains its value across window procedures; if you press the Return key in one window, other windows may get the message if you close the window in which you pressed Return.  (GR/PC/022)

If you have Next and Previous buttons that use the symbols ">>" and "<<", graying the button makes the symbols disappear at 9-point resolution because the diagonal lines are completely erased by the graying algorithm.  (GR/WI/126)

Clicking on a field in a palette window or taking any other action that changes the palette window will remove the focus from a field in another window.  If you place the command "Open Window [#TOP]" behind the pushbuttons inside the #CLICK or behind the window control procedure of the palette window, the focus always returns to the top normal window. (GR/WI/046)

On Windows, rulers are not to scale due to differences in pixel counts.  You should use window rulers as relative measuring sticks, not as real, absolute ones.  (GR/WI/119)

On the Macintosh, you should use Omnis design windows with a color monitor set to 256 colors for best results.  Using a black and white monitor may lead to problems seeing highlights.  (GR/WI/047)

Selecting a pushbutton with an icon while using a Mach32 screen driver (MACH32.DRV) with version less than 1.2 sometimes GPFs in 640x480 resolution with 65,000 colors.  (GR/WO/085FC)

Redrawing text fields with square bracket notation doesn't work with Redraw commands. (GR/WO/019)

You cannot undo all changes to a field using the attribute tool box.  You cannot undo icon Ids and variable data such as autotab length, text, and calculation strings.  (GR/WO/066) 

The height and width of an object may differ between design and runtime modes.  (GR/WO/009)

If you change an entry field to have an invalid icon ID such as -1 may have unpredictable effects on the field when you change it to a type that displays an icon such as a pushbutton.  (GR/WO/095)

Under certain circumstances, if you have grouped two background objects and you move one object to the 0,0 position on the rulers, the two objects will lose their relative position and stack on top of one another.  (GR/WO/129)

Debugger

On Windows, if you place more than thirty procedures on the stack, Omnis clears the stack and loses the stacked procedures when you click on another procedure in the debugger.  The debugger in general cannot handle a large number of procedures on the stack.  (GR/DB/016, GR/PC/123) 

The procedure stack popup menu only displays twenty or fewer procedures, even if there are more on the stack.  (GR/DB/015)

Extensions

You cannot put an Omnis breakpoint into a procedure called by an extension.  When the extension calls the procedure, and the flow of control reaches the breakpoint, Omnis clears the stack.  (GR/ET/003FC)

On the Macintosh, if you execute Load external routine and do not install the QuickTime extension, you crash with an unimplemented trap error.  (GR/EX/015FC)

Menus

On the Macintosh, the shortcut key \SF1 yields Shift+Command+1 on the menu bar but requires Shift+Function1 to activate.  (GR/MU/008FC)

If you place a large (100 line) list into a popup menu, the list may overlap the menu bar.  (GR/PC/030)

On the Macintosh, you should not remove the Apple menu, or Omnis will crash with a type 1 error.  (GR/MU/033)

Form Prototyper

The more complex you make your prototyped forms in terms of tables and joins between them, the greater the chance of generating invalid SQL outer joins in the form.  If you get errors, you may have to edit the SQL manually to make it correct.  (GR/WB/002FC)

Search Objects

Using the Boolean constants kTrue and kFalse in a search object does not yield a valid test, it returns records with the value equal to NULL.  (GR/SF/005)

Environment

When you start the Development Shell with no libraries open, you have no access to any but the most basic menu items.  Opening a library enables all the menu items.  (GR/DS/050)

Find and Replace does not find file format names qualified by the library name.  This can also happen with other commands such as Map fields to host that take a file format as an argument. (GR/FR/010FC)

You cannot start both version 2 Omnis and version 3 Omnis on the same workstation.  (GR/GE/034)

There is a problem with running multiple copies of the Omnis runtime under Windows.  You must change the internal name of the OMNISRES.DLL and OMNISOLE.DLL libraries with the MCHAN utility.  See the notes that accompany the Omnis installation kit.  (GR/GE/085)

The Attribute Inspector does not show any attributes for a format with a name beginning with a number.  (GR/NT/098FC)

CMS

The CMS uses a greater-than comparison to update revisions.  If your version number is character rather than the default numeric type ("XXX" rather than "1", for example), the CMS does a string comparison to decide whether a revision is greater or less than a file.  Using numbers for your version string is safest.  (GR/CM/029)

Conversion

When converting a data file with a very large number of columns from version 1 to version 3, performance in building lists from the data file is slower than in version 1.  This applies only in a very limited set of circumstances unlikely to occur in real-world applications.  (GR/PF/006FC)

