Omnis Technical Notes

The following Tech Notes are designed to help you with some of the more common technical problems you might face while developing your Omnis application.

Select topic:  

Most Recent Tech Notes  
Making SSL Connections using the PostgreSQL DAM Updated TNSQ0031
Setting Environment Variables on the Mac Updated TNSQ0025
Using Oracle Instant Client with MacOSX 10.11 "El Capitan" and later Updated TNSQ0010B
Error Handling in Remote Forms & InheritanceNew TNJS0008
Restful Web Services HTTP JavaScript Push ExampleNew TNWS0005
Setting up a Server on Amazon Web Services (AWS)New TNJS0007
Omnis Studio OS X and App Nap New TNID0008
Running Asynchronous Tasks Using SQL WorkersNew TNSQ0035
Creating a custom editor for Schema classesNew TNID0007
Using the Omnis Synchronization ServerUpdated TNJS0005
Omnis JavaScript Client  
Building & Customizing the Android app TNJS0001
Building & Customizing the iOS JavaScript Wrapper app TNJS0002
Setting up the Omnis App Server TNJS0003
JavaScript Client Construct Row TNJS0004
Using the Omnis Synchronization ServerUpdated TNJS0005
Debugging JavaScript Client Methods TNJS0006
Setting up a Server on Amazon Web Services (AWS)New TNJS0007
Error Handling in Remote Forms & InheritanceNew TNJS0008
JavaScript Components  
Complex Grid TNJC0001
Subform control TNJC0002
Data grid control TNJC0003
Linked List TNJC0004
Device Control TNJC0005
Subform Sets TNJC0006
High Definition Icons TNJC0007
Trans button TNJC0008
Omnis Web Development  
Setting Secure mode for the Omnis App Server TNWE0009
Cancelling a long server process from a remote form TNWE0012
Asynchronous Programming in Omnis TNWE0014
Direct HTTP access in Omnis TNWE0016
Using Omnis HTTP Commands TNWE0018
Using the JavaScript Client with PHP TNWE0024
Creating Dynamic Web Forms TNWE0027
Linux  
How to install Omnis Studio 3.x under Linux (Updated Jan 04) TNLI0001
The Integration of Open Office in Omnis Studio under Linux TNLI0002
How to run and use Omnis Studio on Linux platforms (updated Jan 04) TNLI0003
Setting up Omnis on Debian Linux TNLI0004
How to determine the MAC address under Linux TNLI0005
OpenSSL Error when launching Omnis Studio on RedHat6 TNLI0006
Object Orientation and Inheritance  
Objects and Object References TNOO0001
Polymorphism in Omnis TNOO0002
Using References TNOO0003
Beginners guide to Abstraction and Inheritance TNOO0004
Encapsulation of GUI Objects TNOO0005
Client/Server and SQL Programming - General  
Using Bind Variables with SQL Classes TNSQ0001
Inserting Dates into a Server from Omnis Studio TNSQ0002
Omnis Studio Examples - SQL TNSQ0004
Altering Datatypes for the columns in your Omnis SQL table TNSQ0005
Mapping Character Sets TNSQ0013
SQL Error Handler TNSQ0017
Using multiple SQL backends with Omnis TNSQ0018
Intelligent SQL Search TNSQ0022
Setting Environment Variables on the MacUpdated TNSQ0025
Table Classes versus Object Classes   TNSQ0027
Omnis Character Mapping Explained TNSQ0028
Creating Server Tables Automatically TNSQ0033
Running Asynchronous Tasks Using SQL WorkersNew TNSQ0035
   Oracle  
The DEFAULTDATE keyword for Oracle TNDA0001
Using Oracle Instant Client with MacOSX 10.11 "El Capitan" and laterUpdated TNSQ0010b
Using Oracle Instant Client on Windows TNSQ0034
Configuring Oracle DAM(s) on Linux TNSQ0014
Connecting to an Oracle 64-bit Server TNSQ0020
Mixing Unicode and Non-Unicode Data Types with Oracle TNSQ0023
PL/SQL Array Binding with Oracle TNSQ0026
Making a Proxy Connection using the Oracle DAM TNSQ0032
   Sybase  
Using Mac OSX DAMORA8 and DAMSYBSE DAMs with Studio 4.2 TNSQ0011
Connecting to Sybase Adaptive Server Anywhere 9 (ASA) TNSQ0008
Connecting to Sybase from Mac OSX TNSQ0009
Connecting to Sybase SQL Anywhere 10/11  from a Mac-Intel Client TNSQ0016
Connecting to Sybase Adaptive Server Anywhere 11 64-bit Server TNSQ0021
Connecting to Sybase from Mac OSX TNSQ0029
   MySQL  
Creating your own SQL session for MySQL TNSQ0012
Making SSL Connections using the MySQL DAM TNSQ0030
   PostgreSQL  
Mapping Extended Characters with PostgreSQL TNSQ0019
Making SSL Connections using the PostgreSQL DAM Updated TNSQ0031
  ODBC / Omnis ODBC Driver  
ODBC Administration with Omnis Studio TNSQ0015
Omnis ODBC Access Masks TNSQ0003
Using Outer Joins with OmnisSQL and the Omnis ODBC Driver TNSQ0007
  DB2  
Non-Visual DB2 DAM and Record Locking TNSQ0006
  JDBC  
Making Connections using the JDBC DAM TNSQ0024
Omnis Libraries  
Multiple Libraries and Task Variables TNLB0001
Omnis Components / Extending Omnis  
Using .Net objects in Omnis Studio TNEX0001
The Omnis Remote Studio Applet (rStudio) TNEX0002
Using the .NET Objects component TNEX0003
Displaying progress in FTP Transfer TNEX0004
Creating XML documents with oXML TNXM0001
Creating Unicode External Components TNXM0002
Creating Old-Style Unicode External Components TNXM0003
Animating Objects using the Transform Component TNXM0004
Omnis Web Services  
Using Omnis Studio as a SOAP host TNWS0001
RESTful Web Services: implementing a Client TNWS0002
Getting Started with RESTful Web Services, Tomcat and Swagger UI TNWS0003
Web Service Authentication TNWS0004
Restful Web Services HTTP JavaScript Push ExampleNew TNWS0005
Data Management  
Using Complex Data Structures TNDM0001
Data Corruption Problems TNDM0002
String Tables in Omnis Studio TNDM0003
NULLs in Expressions and Omnis TNDM0004
Synchronizing a Schema and a corresponding Table in a datafile TNDM0005
Integrated Design Environment  
Transfering your customised Component Store between versions of Studio TNID0001
Naming conventions used in Studio TNID0002
Documenting your Omnis code TNID0003
Creating your own Component Store Objects TNID0004
Adding version info to your application TNID0005
Changing Built-in Shortcut Keys in Studio 5.0.1 TNID0006
Creating a custom editor for Schema classesNew TNID0007
Omnis Studio OS X and App Nap New TNID0008
GUI and Application Design  
Cascaded Menu Instances. TNGI0001
Embedding Styles Within Lists. TNGI0002
Omnis Tree Control. TNGI0003
Prompt for Search Class. TNGI0006
Picture Conversion in Omnis 7. TNGI0007
Storing JPEGs in a Server Database. TNGI0008
Scatter Graphs using the $seriesgroupswap property. TNGI0009
The Deployment Process and FAQ. TNGI0010
Handling the conversion of a Mac text file to an ANSI (PC) text file. TNGI0011
How to drop down a droplist automatically when entering the dropdown list. TNGI0012
Studio Event Management. TNGI0013
Transparent Window Objects TNGI0014
Dynamic Positioning of Objects TNGI0015
Programming without the Enter Data command TNGI0016
Creating your own Omnis desktop TNGI0017
Using $dataname in Subwindow fields TNGI0018
Adding colors and icons to lists TNGI0019
Manually changing the sort order of list lines TNGI0020
How to display PDF files directly in Omnis Studio TNGI0021
Re-usable Context Menus TNGI0022
Using $gridcolumn and $gridsection in Complex Grids TNGI0023
Translating and/or Replacing Built-in Omnis Menus TNGI0024
Using the style() function in Tree Lists TNGI0025
Standard Menu Command TNGI0026
Using Subwindows in a Tab Pane TNGI0027
Creating a dynamic search field TNGI0028
Column Sensitive Context Menus for Headed List Boxes TNGI0029
Notation  
Expanding And Collapsing A Tree. TNNO0002
Grid Field Exceptions. TNNO0003
OLE Automation Notation. TNNO0004
The ODBC Driver for Datafile Access and $publicdata. TNNO0005
Using Register DLL and Call DLL. TNNO0006
Removing duplicate rows from a list. TNNO0007
Using $filter on a list. TNNO0008
Proportional sizing of columns in a headed list. TNNO0009
Tree lists - displaying nodes with a common parent. TNNO0010
Creating default values in new rows in an extendable data grid. TNNO0011
Moving objects on a specific tab of a pane. TNNO0012
The Notational approach to using FileOps TNNO0013
$tag and $drawinactive Properties of a Tree list TNNO0014
Defining a list with up to 400 columns TNNO0015
Avoiding calculations with NULL TNNO0016
Using custom properties with $sendall TNNO0017
Functions  
How to use the strpbrk() and strspn() functions.
TNFN0001
Printing and Reports  
LaserWriter8 (MAC OS)
TNPR0001
The job setup dialog TNPR0002
Printing ranges of pages TNPR0003
Report Class Prints Itself TNPR0004
The Page Setup when printing in Omnis TNPR0005
Horizontal Sliding TNPR0006
Demonstrating the use of $print in reports TNPR0007
Save a report as PDF TNPR0008
Storing Report Job Setup Parameters TNPR0009
Omnis Conversion  
Converting Omnis 7 applications to Omnis Studio. TNCN0001
Preparation of Omnis 7 code prior to conversion. TNCN0002
Windows  
Windows User Access Control (UAC) TNWI0001
Running the Omnis App Server as a Windows Service TNWI0002
Old Tech Notes
Please click here to access tech notes relating to old or obsolete technologies.